1
0
Fork 0
fgdata/Nasal/startup.nas
Torsten Dreyer 0fcc99d9a3 startup.nas: just check for a valid METAR
and don't care if it's from realwx or static input. There is still
a timing issue, probably we should wait for a valid METAR
if realwx is enabled.
2010-10-07 17:59:38 +02:00

31 lines
1.2 KiB
Text

var set_runway_from_metar_wind = func {
if (!getprop("/environment/metar/valid"))
return printlog("info", "metar-rwy: no valid metar");
if (!getprop("/sim/startup/options/airport"))
return printlog("info", "metar-rwy: no airport requested");
if (getprop("/sim/startup/options/runway"))
return printlog("info", "metar-rwy: won't override explicit runway");
if (getprop("/sim/startup/options/heading-deg") < 9990.0)
return printlog("info", "metar-rwy: won't override explicit heading");
if (!getprop("/sim/presets/onground"))
return printlog("info", "metar-rwy: we aren't on ground");
if (getprop("/environment/metar/base-wind-speed-kt") < 1)
return;
var from = getprop("/environment/metar/base-wind-range-from");
var to = getprop("/environment/metar/base-wind-range-to");
var wind_from = (from + to) * 0.5;
printlog("info", "metar-rwy: setting new target heading ", wind_from);
setprop("/sim/presets/heading-deg", wind_from);
setprop("/sim/presets/longitude-deg", -9999);
setprop("/sim/presets/latitude-deg", -9999);
fgcommand("presets-commit");
printlog("info", "metar-rwy: selected runway: ", getprop("/sim/atc/runway"));
}
_setlistener("/sim/signals/nasal-dir-initialized", func {
set_runway_from_metar_wind();
delete(globals, "startup");
});