From 94389c42ca2bde6cdc00451dee3ea1e99be01361 Mon Sep 17 00:00:00 2001 From: Joshua Davidson Date: Fri, 21 Dec 2018 16:56:55 -0500 Subject: [PATCH] Sim: ACCONFIG 1.5.1: Rendering options wrong detection --- AircraftConfig/about.xml | 2 +- AircraftConfig/acconfig.nas | 288 ++++++++++++++++++++--------------- AircraftConfig/main.xml | 2 +- AircraftConfig/rendering.xml | 155 +++++++++++++++++++ Nasal/electrical.nas | 2 + revision.txt | 2 +- 6 files changed, 328 insertions(+), 123 deletions(-) create mode 100644 AircraftConfig/rendering.xml diff --git a/AircraftConfig/about.xml b/AircraftConfig/about.xml index ed5952b0..d797a6d3 100644 --- a/AircraftConfig/about.xml +++ b/AircraftConfig/about.xml @@ -61,7 +61,7 @@ left - + diff --git a/AircraftConfig/acconfig.nas b/AircraftConfig/acconfig.nas index a8ca0464..d0d45c04 100644 --- a/AircraftConfig/acconfig.nas +++ b/AircraftConfig/acconfig.nas @@ -88,6 +88,7 @@ setprop("/systems/acconfig/options/keyboard-mode", 0); setprop("/systems/acconfig/options/laptop-mode", 0); setprop("/systems/acconfig/options/adirs-skip", 0); setprop("/systems/acconfig/options/welcome-skip", 0); +setprop("/systems/acconfig/options/no-rendering-warn", 0); setprop("/systems/acconfig/options/pfd-rate", 1); setprop("/systems/acconfig/options/nd-rate", 1); setprop("/systems/acconfig/options/uecam-rate", 1); @@ -108,6 +109,7 @@ var error_mismatch = gui.Dialog.new("sim/gui/dialogs/acconfig/error/mismatch/dia var groundservices_dlg = gui.Dialog.new("sim/gui/dialogs/acconfig/groundsrvc/dialog", "Aircraft/IDG-A32X/AircraftConfig/groundservices.xml"); var du_quality = gui.Dialog.new("sim/gui/dialogs/acconfig/du-quality/dialog", "Aircraft/IDG-A32X/AircraftConfig/du-quality.xml"); var autopush_dlg = gui.Dialog.new("sim/gui/dialogs/autopush/dialog", "Aircraft/IDG-A32X/AircraftConfig/autopush.xml"); +var rendering_dlg = gui.Dialog.new("sim/gui/dialogs/rendering/dialog", "Aircraft/IDG-A32X/AircraftConfig/rendering.xml"); spinning.start(); init_dlg.open(); @@ -132,6 +134,7 @@ var mismatch_chk = func { if (getprop("/systems/acconfig/out-of-date") != 1) { error_mismatch.open(); } + libraries.systemsLoop.stop(); print("Mismatch: 0x121"); welcome_dlg.close(); } else if (getprop("/gear/gear[0]/wow") == 0 or getprop("/position/altitude-ft") >= 15000) { @@ -140,6 +143,7 @@ var mismatch_chk = func { if (getprop("/systems/acconfig/out-of-date") != 1) { error_mismatch.open(); } + libraries.systemsLoop.stop(); print("Mismatch: 0x223"); welcome_dlg.close(); } else if (getprop("/systems/acconfig/libraries-loaded") != 1) { @@ -148,6 +152,7 @@ var mismatch_chk = func { if (getprop("/systems/acconfig/out-of-date") != 1) { error_mismatch.open(); } + libraries.systemsLoop.stop(); print("Mismatch: 0x247"); welcome_dlg.close(); } @@ -163,14 +168,49 @@ setlistener("/sim/signals/fdm-initialized", func { readSettings(); if (getprop("/systems/acconfig/out-of-date") != 1 and getprop("/systems/acconfig/options/revision") < current_revision and getprop("/systems/acconfig/mismatch-code") == "0x000") { updated_dlg.open(); + if (getprop("/systems/acconfig/options/no-rendering-warn") != 1) { + renderingSettings.check(); + } } else if (getprop("/systems/acconfig/out-of-date") != 1 and getprop("/systems/acconfig/mismatch-code") == "0x000" and getprop("/systems/acconfig/options/welcome-skip") != 1) { welcome_dlg.open(); + if (getprop("/systems/acconfig/options/no-rendering-warn") != 1) { + renderingSettings.check(); + } } setprop("/systems/acconfig/options/revision", current_revision); writeSettings(); spinning.stop(); }); +var renderingSettings = { + check: func() { + var rembrandt = getprop("/sim/rendering/rembrandt/enabled"); + var ALS = getprop("/sim/rendering/shaders/skydome"); + var customSettings = getprop("/sim/rendering/shaders/custom-settings") == 1; + var landmass = getprop("/sim/rendering/shaders/landmass") >= 4; + var model = getprop("/sim/rendering/shaders/model") >= 1; + if (!rembrandt and (!ALS or !customSettings or !landmass or !model)) { + rendering_dlg.open(); + } + }, + fixAll: func() { + me.fixCore(); + var landmass = getprop("/sim/rendering/shaders/landmass") >= 4; + var model = getprop("/sim/rendering/shaders/model") >= 1; + if (!landmass) { + setprop("/sim/rendering/shaders/landmass", 4); + } + if (!model) { + setprop("/sim/rendering/shaders/model", 1); + } + }, + fixCore: func() { + setprop("/sim/rendering/shaders/skydome", 1); # ALS on + setprop("/sim/rendering/shaders/custom-settings", 1); + gui.popupTip("Rendering Settings updated!"); + }, +}; + var readSettings = func { io.read_properties(getprop("/sim/fg-home") ~ "/Export/IDG-A32X-config.xml", "/systems/acconfig/options"); setprop("/options/system/keyboard-mode", getprop("/systems/acconfig/options/keyboard-mode")); @@ -191,36 +231,38 @@ var writeSettings = func { # Cold and Dark var colddark = func { - spinning.start(); - ps_load_dlg.open(); - setprop("/systems/acconfig/autoconfig-running", 1); - setprop("/controls/gear/brake-left", 1); - setprop("/controls/gear/brake-right", 1); - # Initial shutdown, and reinitialization. - setprop("/controls/engines/engine-start-switch", 1); - setprop("/controls/engines/engine[0]/cutoff-switch", 1); - setprop("/controls/engines/engine[1]/cutoff-switch", 1); - setprop("/controls/flight/slats", 0.000); - setprop("/controls/flight/flaps", 0.000); - setprop("/controls/flight/flap-lever", 0); - setprop("/controls/flight/flap-pos", 0); - setprop("/controls/flight/flap-txt", " "); - libraries.flaptimer.stop(); - setprop("/controls/flight/speedbrake-arm", 0); - setprop("/controls/flight/speedbrake", 0); - setprop("/controls/gear/gear-down", 1); - setprop("/controls/flight/elevator-trim", 0); - libraries.systemsInit(); - failReset(); - if (getprop("/engines/engine[1]/n2-actual") < 2) { - colddark_b(); - } else { - var colddark_eng_off = setlistener("/engines/engine[1]/n2-actual", func { - if (getprop("/engines/engine[1]/n2-actual") < 2) { - removelistener(colddark_eng_off); - colddark_b(); - } - }); + if (getprop("/systems/acconfig/mismatch-code") == "0x000") { + spinning.start(); + ps_load_dlg.open(); + setprop("/systems/acconfig/autoconfig-running", 1); + setprop("/controls/gear/brake-left", 1); + setprop("/controls/gear/brake-right", 1); + # Initial shutdown, and reinitialization. + setprop("/controls/engines/engine-start-switch", 1); + setprop("/controls/engines/engine[0]/cutoff-switch", 1); + setprop("/controls/engines/engine[1]/cutoff-switch", 1); + setprop("/controls/flight/slats", 0.000); + setprop("/controls/flight/flaps", 0.000); + setprop("/controls/flight/flap-lever", 0); + setprop("/controls/flight/flap-pos", 0); + setprop("/controls/flight/flap-txt", " "); + libraries.flaptimer.stop(); + setprop("/controls/flight/speedbrake-arm", 0); + setprop("/controls/flight/speedbrake", 0); + setprop("/controls/gear/gear-down", 1); + setprop("/controls/flight/elevator-trim", 0); + libraries.systemsInit(); + failReset(); + if (getprop("/engines/engine[1]/n2-actual") < 2) { + colddark_b(); + } else { + var colddark_eng_off = setlistener("/engines/engine[1]/n2-actual", func { + if (getprop("/engines/engine[1]/n2-actual") < 2) { + removelistener(colddark_eng_off); + colddark_b(); + } + }); + } } } var colddark_b = func { @@ -237,41 +279,43 @@ var colddark_b = func { # Ready to Start Eng var beforestart = func { - spinning.start(); - ps_load_dlg.open(); - setprop("/systems/acconfig/autoconfig-running", 1); - setprop("/controls/gear/brake-left", 1); - setprop("/controls/gear/brake-right", 1); - # First, we set everything to cold and dark. - setprop("/controls/engines/engine-start-switch", 1); - setprop("/controls/engines/engine[0]/cutoff-switch", 1); - setprop("/controls/engines/engine[1]/cutoff-switch", 1); - setprop("/controls/flight/slats", 0.000); - setprop("/controls/flight/flaps", 0.000); - setprop("/controls/flight/flap-lever", 0); - setprop("/controls/flight/flap-pos", 0); - setprop("/controls/flight/flap-txt", " "); - libraries.flaptimer.stop(); - setprop("/controls/flight/speedbrake-arm", 0); - setprop("/controls/flight/speedbrake", 0); - setprop("/controls/gear/gear-down", 1); - setprop("/controls/flight/elevator-trim", 0); - libraries.systemsInit(); - failReset(); - setprop("/controls/APU/master", 0); - setprop("/controls/APU/start", 0); - - # Now the Startup! - setprop("/controls/electrical/switches/battery1", 1); - setprop("/controls/electrical/switches/battery2", 1); - setprop("/controls/APU/master", 1); - setprop("/controls/APU/start", 1); - var apu_rpm_chk = setlistener("/systems/apu/rpm", func { - if (getprop("/systems/apu/rpm") >= 98) { - removelistener(apu_rpm_chk); - beforestart_b(); - } - }); + if (getprop("/systems/acconfig/mismatch-code") == "0x000") { + spinning.start(); + ps_load_dlg.open(); + setprop("/systems/acconfig/autoconfig-running", 1); + setprop("/controls/gear/brake-left", 1); + setprop("/controls/gear/brake-right", 1); + # First, we set everything to cold and dark. + setprop("/controls/engines/engine-start-switch", 1); + setprop("/controls/engines/engine[0]/cutoff-switch", 1); + setprop("/controls/engines/engine[1]/cutoff-switch", 1); + setprop("/controls/flight/slats", 0.000); + setprop("/controls/flight/flaps", 0.000); + setprop("/controls/flight/flap-lever", 0); + setprop("/controls/flight/flap-pos", 0); + setprop("/controls/flight/flap-txt", " "); + libraries.flaptimer.stop(); + setprop("/controls/flight/speedbrake-arm", 0); + setprop("/controls/flight/speedbrake", 0); + setprop("/controls/gear/gear-down", 1); + setprop("/controls/flight/elevator-trim", 0); + libraries.systemsInit(); + failReset(); + setprop("/controls/APU/master", 0); + setprop("/controls/APU/start", 0); + + # Now the Startup! + setprop("/controls/electrical/switches/battery1", 1); + setprop("/controls/electrical/switches/battery2", 1); + setprop("/controls/APU/master", 1); + setprop("/controls/APU/start", 1); + var apu_rpm_chk = setlistener("/systems/apu/rpm", func { + if (getprop("/systems/apu/rpm") >= 98) { + removelistener(apu_rpm_chk); + beforestart_b(); + } + }); + } } var beforestart_b = func { # Continue with engine start prep. @@ -312,41 +356,43 @@ var beforestart_b = func { # Ready to Taxi var taxi = func { - spinning.start(); - ps_load_dlg.open(); - setprop("/systems/acconfig/autoconfig-running", 1); - setprop("/controls/gear/brake-left", 1); - setprop("/controls/gear/brake-right", 1); - # First, we set everything to cold and dark. - setprop("/controls/engines/engine-start-switch", 1); - setprop("/controls/engines/engine[0]/cutoff-switch", 1); - setprop("/controls/engines/engine[1]/cutoff-switch", 1); - setprop("/controls/flight/slats", 0.000); - setprop("/controls/flight/flaps", 0.000); - setprop("/controls/flight/flap-lever", 0); - setprop("/controls/flight/flap-pos", 0); - setprop("/controls/flight/flap-txt", " "); - libraries.flaptimer.stop(); - setprop("/controls/flight/speedbrake-arm", 0); - setprop("/controls/flight/speedbrake", 0); - setprop("/controls/gear/gear-down", 1); - setprop("/controls/flight/elevator-trim", 0); - libraries.systemsInit(); - failReset(); - setprop("/controls/APU/master", 0); - setprop("/controls/APU/start", 0); - - # Now the Startup! - setprop("/controls/electrical/switches/battery1", 1); - setprop("/controls/electrical/switches/battery2", 1); - setprop("/controls/APU/master", 1); - setprop("/controls/APU/start", 1); - var apu_rpm_chk = setlistener("/systems/apu/rpm", func { - if (getprop("/systems/apu/rpm") >= 98) { - removelistener(apu_rpm_chk); - taxi_b(); - } - }); + if (getprop("/systems/acconfig/mismatch-code") == "0x000") { + spinning.start(); + ps_load_dlg.open(); + setprop("/systems/acconfig/autoconfig-running", 1); + setprop("/controls/gear/brake-left", 1); + setprop("/controls/gear/brake-right", 1); + # First, we set everything to cold and dark. + setprop("/controls/engines/engine-start-switch", 1); + setprop("/controls/engines/engine[0]/cutoff-switch", 1); + setprop("/controls/engines/engine[1]/cutoff-switch", 1); + setprop("/controls/flight/slats", 0.000); + setprop("/controls/flight/flaps", 0.000); + setprop("/controls/flight/flap-lever", 0); + setprop("/controls/flight/flap-pos", 0); + setprop("/controls/flight/flap-txt", " "); + libraries.flaptimer.stop(); + setprop("/controls/flight/speedbrake-arm", 0); + setprop("/controls/flight/speedbrake", 0); + setprop("/controls/gear/gear-down", 1); + setprop("/controls/flight/elevator-trim", 0); + libraries.systemsInit(); + failReset(); + setprop("/controls/APU/master", 0); + setprop("/controls/APU/start", 0); + + # Now the Startup! + setprop("/controls/electrical/switches/battery1", 1); + setprop("/controls/electrical/switches/battery2", 1); + setprop("/controls/APU/master", 1); + setprop("/controls/APU/start", 1); + var apu_rpm_chk = setlistener("/systems/apu/rpm", func { + if (getprop("/systems/apu/rpm") >= 98) { + removelistener(apu_rpm_chk); + taxi_b(); + } + }); + } } var taxi_b = func { # Continue with engine start prep, and start engines. @@ -404,24 +450,26 @@ var taxi_d = func { # Ready to Takeoff var takeoff = func { - # The same as taxi, except we set some things afterwards. - taxi(); - var eng_one_chk_c = setlistener("/engines/engine[0]/state", func { - if (getprop("/engines/engine[0]/state") == 3) { - removelistener(eng_one_chk_c); - setprop("/controls/lighting/strobe", 1); - setprop("/controls/lighting/landing-lights[1]", 1); - setprop("/controls/lighting/landing-lights[2]", 1); - setprop("/controls/flight/speedbrake-arm", 1); - setprop("/controls/flight/flaps", 0.290); - setprop("/controls/flight/slats", 0.666); - setprop("/controls/flight/flap-lever", 1); - setprop("/controls/flight/flap-pos", 2); - setprop("/controls/flight/flap-txt", "1+F"); - libraries.flaptimer.start(); - setprop("/controls/flight/elevator-trim", -0.07); - systems.arm_autobrake(3); - libraries.ECAM.toConfig(); - } - }); + if (getprop("/systems/acconfig/mismatch-code") == "0x000") { + # The same as taxi, except we set some things afterwards. + taxi(); + var eng_one_chk_c = setlistener("/engines/engine[0]/state", func { + if (getprop("/engines/engine[0]/state") == 3) { + removelistener(eng_one_chk_c); + setprop("/controls/lighting/strobe", 1); + setprop("/controls/lighting/landing-lights[1]", 1); + setprop("/controls/lighting/landing-lights[2]", 1); + setprop("/controls/flight/speedbrake-arm", 1); + setprop("/controls/flight/flaps", 0.290); + setprop("/controls/flight/slats", 0.666); + setprop("/controls/flight/flap-lever", 1); + setprop("/controls/flight/flap-pos", 2); + setprop("/controls/flight/flap-txt", "1+F"); + libraries.flaptimer.start(); + setprop("/controls/flight/elevator-trim", -0.07); + systems.arm_autobrake(3); + libraries.ECAM.toConfig(); + } + }); + } } diff --git a/AircraftConfig/main.xml b/AircraftConfig/main.xml index 75079a04..035357a0 100644 --- a/AircraftConfig/main.xml +++ b/AircraftConfig/main.xml @@ -13,7 +13,7 @@ hbox left - + 1 + + + + + + vbox + + + left + + + + + left + + + + + left + + + + + left + + + + + left + + + + + + + left + + + + + left + + + + + + + + + hbox + + + + center + /systems/acconfig/options/no-rendering-warn + + property-toggle + /systems/acconfig/options/no-rendering-warn + + + dialog-apply + + + nasal + + + true + + + + + + + + hbox + + + + + + + + + + diff --git a/Nasal/electrical.nas b/Nasal/electrical.nas index 7a3d6182..06c0aa4e 100644 --- a/Nasal/electrical.nas +++ b/Nasal/electrical.nas @@ -160,6 +160,8 @@ var ELEC = { setprop("/systems/electrical/battery2-amps", 0); setprop("/systems/electrical/battery1-percent", 68); setprop("/systems/electrical/battery2-percent", 68); + setprop("/systems/electrical/battery1-time", 0); + setprop("/systems/electrical/battery2-time", 0); setprop("/systems/electrical/bus/dc1", 0); setprop("/systems/electrical/bus/dc2", 0); setprop("/systems/electrical/bus/dcbat", 0); diff --git a/revision.txt b/revision.txt index 2fd0758c..3c596919 100644 --- a/revision.txt +++ b/revision.txt @@ -1 +1 @@ -4715 \ No newline at end of file +4716 \ No newline at end of file