diff --git a/A320-main.xml b/A320-main.xml index be7548fd..0396be03 100644 --- a/A320-main.xml +++ b/A320-main.xml @@ -1321,6 +1321,7 @@ setprop("/it-autoflight/sound/apoffsound2", 0); } setprop("/it-autoflight/output/ap-warning", 0); + setprop("/ECAM/warnings/master-warning-light", 0); } </script> </binding> diff --git a/Nasal/FMGC-b.nas b/Nasal/FMGC-b.nas index 71a9639d..7039a699 100644 --- a/Nasal/FMGC-b.nas +++ b/Nasal/FMGC-b.nas @@ -708,7 +708,7 @@ var ap_various = func { } if (getprop("/it-autoflight/output/ap1") == 1 or getprop("/it-autoflight/output/ap2") == 1) { - if (getprop("/controls/flight/aileron") > 0.2 or getprop("/controls/flight/aileron") < -0.2 or getprop("/controls/flight/elevator") > 0.2 or getprop("/controls/flight/elevator") < -0.2) { + if (getprop("/controls/flight/aileron") > 0.2 or getprop("/controls/flight/aileron") < -0.2 or getprop("/controls/flight/elevator") > 0.2 or getprop("/controls/flight/elevator") < -0.2 or getprop("/controls/flight/rudder") > 0.2 or getprop("/controls/flight/rudder") < -0.2) { setprop("/it-autoflight/input/ap1", 0); setprop("/it-autoflight/input/ap2", 0); libraries.apOff("hard", 0); diff --git a/Nasal/it-fbw.nas b/Nasal/it-fbw.nas index 61464975..55cf2e90 100644 --- a/Nasal/it-fbw.nas +++ b/Nasal/it-fbw.nas @@ -208,7 +208,9 @@ var update_loop = func { if (getprop("/it-fbw/protections/overspeed") != 1) { setprop("/it-fbw/protections/overspeed", 1); } - libraries.apOff("hard", 0); + if (getprop("/it-autoflight/input/ap1") == 1 or getprop("/it-autoflight/input/ap2") == 1) { + libraries.apOff("hard", 0); + } } else { if (getprop("/it-fbw/protections/overspeed") != 0) { setprop("/it-fbw/protections/overspeed", 0); diff --git a/gui/dialogs/a3xx-autoflight-dlg.xml b/gui/dialogs/a3xx-autoflight-dlg.xml index 03be7fcf..94bdff6d 100644 --- a/gui/dialogs/a3xx-autoflight-dlg.xml +++ b/gui/dialogs/a3xx-autoflight-dlg.xml @@ -51,24 +51,28 @@ <legend>AP1</legend> <pref-width>43</pref-width> <binding> - <command>property-toggle</command> - <property>/it-autoflight/input/ap1</property> - </binding> - <binding> - <command>nasal</command> - <script>libraries.apOff("hard", 1);</script> + <command>nasal</command> + <script> + if (getprop("/it-autoflight/input/ap1") == 0) { + setprop("it-autoflight/input/ap1", 1); + } else { + libraries.apOff("hard", 1); + } + </script> </binding> </button> <button> <legend>AP2</legend> <pref-width>43</pref-width> <binding> - <command>property-toggle</command> - <property>/it-autoflight/input/ap2</property> - </binding> - <binding> - <command>nasal</command> - <script>libraries.apOff("hard", 2);</script> + <command>nasal</command> + <script> + if (getprop("/it-autoflight/input/ap2") == 0) { + setprop("it-autoflight/input/ap2", 1); + } else { + libraries.apOff("hard", 2); + } + </script> </binding> </button> <button>