Add a navinfo() Nasal extension function to provide
information about navaids. Inspired by the airportinfo
function.
This is work in progress, do not rely on this in your Nasal
code - the interface might change over the next weeks.
Whenever resolving a (relative) path to an absolute path with
'resolve_maybe_aircraft_path', check if the result is empty and report original
(relative) path as missing. Otherwise no or a meaningless message is
issued ("File '' not found.").
- Allow structuring generic Nasal sources into modules (i.e. support
separate source folders for multiplayer/local weather/... sources)
- Option to enable/disable loading of generic Nasal modules (i.e we only
need to load stuff that is really needed/enabled).
- Provide basic loading sequence: subfolders are strictly loaded _after_
the base directory. So submodules can rely on .nas-scripts like math.nas,
io.nas, debug.nas, ... to be already loaded - dropping the need for
awkward listeners/timers to delay module initialization (loading order
within Nasal/*.nas is still random)
Reported on the forum from Thorsten Renk and analyzed by
Hooray, fixes this issue:
var x="/test/X";
var y="/test/Y";
setprop(x,100); # sets x=100
setprop(y); # sets x=0
setprop(x,100);
setprop(200); # sets x=200
by checking for at least 2 parameters for setprop
Add helper to look for an aircraft branch path in multiple candidate locations.
Update the main subsystems to use the helper, and hence load from any aircraft dir.
- make some char* "const" to silence warnings
This removes the warning that (rarely) occurred if one wrote to a
write protected property with setprop(). While this was a useful
hint, it needlessly floods the terminal if one protected a property
intentionally. (Consider to add an SG_DEBUG warning instead.) It's
now the caller's job to check for the result if it actually cares.
static FGAirport helpers. As a result, another global index goes away. Use
the helpers to avoid ugly FGPositioned down-casts in various places.
Also converts the environment/METAR code to deal with FGAirport pointers,
instead of string identifiers, and contains work-in-progress code to implement
the AirportList dialog using FGPositioned. This isn't enabled yet for various
reasons, but is the final piece to allow FGAirportList to be removed.
gone. This is good news, since the old query was implemented as a linear
search, sorted by Manhattan distance, and with a warning not to use the logic
at runtime. Various systems (such as the Mk-VIII) do query such data often,
eg every second.
Also gets Point3D out of Airports/simple.hxx, as a precursor to removing it
completely.
the case where the removed child has no other referants, otherwise it
will be deleted on function exit. Also give the ghost type a name for
cleaner debugging.