X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=src%2FFDM%2FYASim%2FControlMap.cpp;h=43fcb529d7189f78052c7cd92ef4b4b154a35721;hb=57918533eb6f58543b8343081dba059a289c36c1;hp=51f5275941fa0e1af4b0e7d601e9b5eecad091e6;hpb=b1c964030d7cb8fc5a161cd40c5ea0300021290e;p=flightgear.git diff --git a/src/FDM/YASim/ControlMap.cpp b/src/FDM/YASim/ControlMap.cpp index 51f527594..43fcb529d 100644 --- a/src/FDM/YASim/ControlMap.cpp +++ b/src/FDM/YASim/ControlMap.cpp @@ -2,11 +2,15 @@ #include "Thruster.hpp" #include "PropEngine.hpp" #include "PistonEngine.hpp" +#include "TurbineEngine.hpp" #include "Gear.hpp" +#include "Hook.hpp" +#include "Launchbar.hpp" #include "Wing.hpp" #include "Rotor.hpp" #include "Math.hpp" #include "Propeller.hpp" +#include "Hitch.hpp" #include "ControlMap.hpp" namespace yasim { @@ -186,15 +190,19 @@ void ControlMap::applyControls(float dt) switch(o->type) { case THROTTLE: ((Thruster*)obj)->setThrottle(lval); break; case MIXTURE: ((Thruster*)obj)->setMixture(lval); break; + case CONDLEVER: ((TurbineEngine*)((PropEngine*)obj)->getEngine())->setCondLever(lval); break; case STARTER: ((Thruster*)obj)->setStarter(lval != 0.0); break; case MAGNETOS: ((PropEngine*)obj)->setMagnetos((int)lval); break; case ADVANCE: ((PropEngine*)obj)->setAdvance(lval); break; - case PROPPITCH: ((PropEngine*)obj)->setPropPitch(lval); break; + case PROPPITCH: ((PropEngine*)obj)->setPropPitch(lval); break; + case PROPFEATHER: ((PropEngine*)obj)->setPropFeather((int)lval); break; case REHEAT: ((Jet*)obj)->setReheat(lval); break; case VECTOR: ((Jet*)obj)->setRotation(lval); break; case BRAKE: ((Gear*)obj)->setBrake(lval); break; case STEER: ((Gear*)obj)->setRotation(lval); break; case EXTEND: ((Gear*)obj)->setExtension(lval); break; + case HEXTEND: ((Hook*)obj)->setExtension(lval); break; + case LEXTEND: ((Launchbar*)obj)->setExtension(lval); break; case CASTERING:((Gear*)obj)->setCastering(lval != 0); break; case SLAT: ((Wing*)obj)->setSlat(lval); break; case FLAP0: ((Wing*)obj)->setFlap0(lval, rval); break; @@ -203,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; } } } @@ -222,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] }