X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FControls%2Fcontrols.hxx;h=0cc5146c7ba81f641f0ce8e5152e64704675b7ef;hb=f5c90088237d3272d8ebf917f94eb0b0033d0306;hp=c4376e3e28696170ee3e25a228b10698c558b2c8;hpb=3e968179c26b13081d446f1a583d729f7761bbb9;p=flightgear.git diff --git a/src/Controls/controls.hxx b/src/Controls/controls.hxx index c4376e3e2..0cc5146c7 100644 --- a/src/Controls/controls.hxx +++ b/src/Controls/controls.hxx @@ -26,7 +26,6 @@ #include -#include #include
#include
@@ -57,9 +56,11 @@ public: private: double aileron; + double aileron_trim; double elevator; double elevator_trim; double rudder; + double rudder_trim; double flaps; double throttle[MAX_ENGINES]; double mixture[MAX_ENGINES]; @@ -91,16 +92,18 @@ public: void init (); void bind (); void unbind (); - void update (); + void update (int dt); // Reset function void reset_all(void); // Query functions inline double get_aileron() const { return aileron; } + inline double get_aileron_trim() const { return aileron_trim; } inline double get_elevator() const { return elevator; } inline double get_elevator_trim() const { return elevator_trim; } inline double get_rudder() const { return rudder; } + inline double get_rudder_trim() const { return rudder_trim; } inline double get_flaps() const { return flaps; } inline double get_throttle(int engine) const { return throttle[engine]; } inline double get_mixture(int engine) const { return mixture[engine]; } @@ -133,6 +136,14 @@ public: set_rudder( aileron / 2.0 ); } } + inline void set_aileron_trim( double pos ) { + aileron_trim = pos; + CLAMP( &aileron_trim, -1.0, 1.0 ); + } + inline void move_aileron_trim( double amt ) { + aileron_trim += amt; + CLAMP( &aileron_trim, -1.0, 1.0 ); + } inline void set_elevator( double pos ) { elevator = pos; CLAMP( &elevator, -1.0, 1.0 ); @@ -157,17 +168,19 @@ public: rudder += amt; CLAMP( &rudder, -1.0, 1.0 ); } + inline void set_rudder_trim( double pos ) { + rudder_trim = pos; + CLAMP( &rudder_trim, -1.0, 1.0 ); + } + inline void move_rudder_trim( double amt ) { + rudder_trim += amt; + CLAMP( &rudder_trim, -1.0, 1.0 ); + } inline void set_flaps( double pos ) { - if ( flaps != pos ) { - globals->get_soundmgr()->play_once( "flaps" ); - } flaps = pos; CLAMP( &flaps, 0.0, 1.0 ); } inline void move_flaps( double amt ) { - if ( fabs(amt) > 0.0 ) { - globals->get_soundmgr()->play_once( "flaps" ); - } flaps += amt; CLAMP( &flaps, 0.0, 1.0 ); }