diff --git a/Input/Joysticks/CH/pro-yoke-usb.xml b/Input/Joysticks/CH/pro-yoke-usb.xml index d3ba87c7d..65b167bde 100644 --- a/Input/Joysticks/CH/pro-yoke-usb.xml +++ b/Input/Joysticks/CH/pro-yoke-usb.xml @@ -208,18 +208,16 @@ <button n="4"> <repeatable>false</repeatable> <binding> - <command>property-assign</command> - <property>/controls/gear/gear-down</property> - <value>false</value> + <command>nasal</command> + <script>controls.gearDown(0)</script> </binding> </button> <button n="5"> <repeatable>false</repeatable> <binding> - <command>property-assign</command> - <property>/controls/gear/gear-down</property> - <value>true</value> + <command>nasal</command> + <script>controls.gearDown(1)</script> </binding> </button> diff --git a/Input/Joysticks/Microsoft/sidewinder-precision-pro.xml b/Input/Joysticks/Microsoft/sidewinder-precision-pro.xml index d0fb8bfcf..a60f1288c 100644 --- a/Input/Joysticks/Microsoft/sidewinder-precision-pro.xml +++ b/Input/Joysticks/Microsoft/sidewinder-precision-pro.xml @@ -21,7 +21,7 @@ * Button 5: flap down Button A 0010 * Button 6: left brake only Button C 0040 * Button 7: right brake only Button D 0080 -* Button 8(Unix)/9(Win): gear up Shift Button 0100(unix), 0200(Win) +* Button 8(Unix)/9(Win): gear toggle Shift Button 0100(unix), 0200(Win) ************************************************************************ $Id$ --> @@ -257,7 +257,7 @@ $Id$ </button> <button> - <desc>Gear Up.</desc> + <desc>Gear Toggle.</desc> <number> <unix>8</unix> <mac>8</mac> @@ -265,11 +265,9 @@ $Id$ </number> <repeatable>false</repeatable> <binding> - <command>property-assign</command> - <property>/controls/gear/gear-down</property> - <value type="double">0.0</value> + <command>nasal</command> + <script>controls.gearToggle()</script> </binding> - </button> </PropertyList> diff --git a/Input/Joysticks/Saitek/Cyborg-Evo.xml b/Input/Joysticks/Saitek/Cyborg-Evo.xml index 3a6f650cf..27f18e9e7 100644 --- a/Input/Joysticks/Saitek/Cyborg-Evo.xml +++ b/Input/Joysticks/Saitek/Cyborg-Evo.xml @@ -288,7 +288,7 @@ axis 5: (hat up-down) look u/d Trim Elevator Adj Propeller # if (mod == nil or mod == 0) { controls.stepFlaps(-1); } elsif (mod == 1) { - setprop("/controls/gear/gear-down", 0); + controls.gearDown(0); } elsif (mod == 2) { view.increase(); } elsif (mod == 3) { @@ -309,7 +309,7 @@ axis 5: (hat up-down) look u/d Trim Elevator Adj Propeller # if (mod == nil or mod == 0) { controls.stepFlaps(1); } elsif (mod == 1) { - setprop("/controls/gear/gear-down", 1); + controls.gearDown(1); } elsif (mod == 2) { view.decrease(); } elsif (mod == 3) { diff --git a/Input/Joysticks/Saitek/Cyborg-Gold-3d-USB.xml b/Input/Joysticks/Saitek/Cyborg-Gold-3d-USB.xml index dec169747..ad30377fe 100644 --- a/Input/Joysticks/Saitek/Cyborg-Gold-3d-USB.xml +++ b/Input/Joysticks/Saitek/Cyborg-Gold-3d-USB.xml @@ -237,7 +237,7 @@ ________________________________________________________________________________ if (mod == 0) { controls.stepFlaps(-1); } elsif (mod == 1) { - setprop("/controls/gear/gear-down", 0); + controls.gearDown(0); } elsif (mod == 2) { view.stepView(-1); } elsif (mod == 3) { @@ -282,7 +282,7 @@ ________________________________________________________________________________ if (mod == 0) { controls.stepFlaps(1); } elsif (mod == 1) { - setprop("/controls/gear/gear-down", 1); + controls.gearDown(1); } elsif (mod == 2) { view.stepView(1); } elsif (mod == 3) { diff --git a/Input/Joysticks/Saitek/X45.xml b/Input/Joysticks/Saitek/X45.xml index f92236982..ffb500d83 100644 --- a/Input/Joysticks/Saitek/X45.xml +++ b/Input/Joysticks/Saitek/X45.xml @@ -227,8 +227,8 @@ $Id$ <button n="1"> <desc>Landing Gear Up/Down Toggle</desc> <binding> - <command>property-toggle</command> - <property>/controls/gear/gear-down</property> + <command>nasal</command> + <script>controls.gearToggle()</script> </binding> </button> diff --git a/Input/Joysticks/ThrustMaster/Top-Gun-Afterburner.xml b/Input/Joysticks/ThrustMaster/Top-Gun-Afterburner.xml index a28228882..af7178c74 100644 --- a/Input/Joysticks/ThrustMaster/Top-Gun-Afterburner.xml +++ b/Input/Joysticks/ThrustMaster/Top-Gun-Afterburner.xml @@ -271,7 +271,7 @@ ________________________________________________________________________________ if (mod == nil or mod == 0) { controls.stepFlaps(-1); } elsif (mod == 1) { - setprop("/controls/gear/gear-down", 0); + controls.gearDown(0); } elsif (mod == 2) { view.stepView(-1); } elsif (mod == 3) { @@ -320,7 +320,7 @@ ________________________________________________________________________________ if (mod == nil or mod == 0) { controls.stepFlaps(1); } elsif (mod == 1) { - setprop("/controls/gear/gear-down", 1); + controls.gearDown(1); } elsif (mod == 2) { view.stepView(1); } elsif (mod == 3) { diff --git a/Input/Joysticks/ThrustMaster/Top-Gun-Fox2-Pro-USB.xml b/Input/Joysticks/ThrustMaster/Top-Gun-Fox2-Pro-USB.xml index df391d153..74c989816 100644 --- a/Input/Joysticks/ThrustMaster/Top-Gun-Fox2-Pro-USB.xml +++ b/Input/Joysticks/ThrustMaster/Top-Gun-Fox2-Pro-USB.xml @@ -128,9 +128,8 @@ <button n="2"> <repeatable>false</repeatable> <binding> - <command>property-assign</command> - <property>/controls/gear/gear-down</property> - <value>true</value> + <command>nasal</command> + <script>controls.gearToggle()</script> </binding> </button> diff --git a/Nasal/controls.nas b/Nasal/controls.nas index 246d22e45..3ae99ab1b 100644 --- a/Nasal/controls.nas +++ b/Nasal/controls.nas @@ -315,3 +315,4 @@ aileronTrimAxis = func { aileronTrim(cmdarg().getNode("value").getValue()); } rudderTrimAxis = func { rudderTrim(cmdarg().getNode("value").getValue()); } gearDown = func { setprop("/controls/gear/gear-down", arg[0]); } +gearToggle = func { gearDown(!getprop("/controls/gear/gear-down")); }