]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/YASim/ControlMap.cpp
Maik: add ROTORBALANCE axis. Fix spelling of ROTORRELTARGET.
[flightgear.git] / src / FDM / YASim / ControlMap.cpp
index cd7174cc5545f3ec7b86fd27398052933d6e0ff5..43fcb529d7189f78052c7cd92ef4b4b154a35721 100644 (file)
@@ -10,6 +10,7 @@
 #include "Rotor.hpp"
 #include "Math.hpp"
 #include "Propeller.hpp"
+#include "Hitch.hpp"
 
 #include "ControlMap.hpp"
 namespace yasim {
@@ -210,11 +211,29 @@ void ControlMap::applyControls(float dt)
         case COLLECTIVE:   ((Rotor*)obj)->setCollective(lval);     break;
         case CYCLICAIL:    ((Rotor*)obj)->setCyclicail(lval,rval); break;
         case CYCLICELE:    ((Rotor*)obj)->setCyclicele(lval,rval); break;
-        case ROTORENGINEON: ((Rotor*)obj)->setEngineOn((int)lval); break;
+        case TILTPITCH:    ((Rotor*)obj)->setTiltPitch(lval);      break;
+        case TILTYAW:      ((Rotor*)obj)->setTiltYaw(lval);        break;
+        case TILTROLL:     ((Rotor*)obj)->setTiltRoll(lval);       break;
+        case ROTORBALANCE:
+                           ((Rotor*)obj)->setRotorBalance(lval);   break;
+        case ROTORBRAKE:   ((Rotorgear*)obj)->setRotorBrake(lval); break;
+        case ROTORENGINEON: 
+                        ((Rotorgear*)obj)->setEngineOn((int)lval); break;
+        case ROTORENGINEMAXRELTORQUE: 
+              ((Rotorgear*)obj)->setRotorEngineMaxRelTorque(lval); break;
+        case ROTORRELTARGET:
+                       ((Rotorgear*)obj)->setRotorRelTarget(lval); break;
        case REVERSE_THRUST: ((Jet*)obj)->setReverse(lval != 0);   break;
        case BOOST:
            ((PistonEngine*)((Thruster*)obj)->getEngine())->setBoost(lval);
            break;
+        case WASTEGATE:
+            ((PistonEngine*)((Thruster*)obj)->getEngine())->setWastegate(lval);
+            break;
+        case WINCHRELSPEED: ((Hitch*)obj)->setWinchRelSpeed(lval); break;
+        case HITCHOPEN:    ((Hitch*)obj)->setOpen(lval!=0);       break;
+        case PLACEWINCH:    ((Hitch*)obj)->setWinchPositionAuto(lval!=0); break;
+        case FINDAITOW:     ((Hitch*)obj)->findBestAIObject(lval!=0); break;
        }
     }
 }
@@ -229,6 +248,7 @@ float ControlMap::rangeMin(int type)
     case CYCLICELE: return -1;
     case CYCLICAIL: return -1;
     case COLLECTIVE: return -1;
+    case WINCHRELSPEED: return -1;
     case MAGNETOS: return 0;   // [0:3]
     default:       return 0;   // [0:1]
     }