]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/physics.qh
Finish off the last of the stats
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / physics.qh
index 17de7b22733aa414700b9b0fa7f09b4b14f1b4af..e70b489fd6fe0c72a218b438b6c9d81e931c3c5e 100644 (file)
@@ -24,6 +24,8 @@ float AdjustAirAccelQW(float accelqw, float factor);
 
 bool IsFlying(entity a);
 
+#define PHYS_AMMO_FUEL(s) STAT(FUEL, s)
+
 #ifdef CSQC
 
        const int FL_WATERJUMP = 2048;  // player jumping out of water
@@ -33,6 +35,7 @@ bool IsFlying(entity a);
        void PM_multijump();
 
        .float watertype;
+       .float waterlevel;
        .int items;
 
        .vector movement;
@@ -43,8 +46,8 @@ bool IsFlying(entity a);
        #define IS_PLAYER(s)                                            (s).isplayermodel
        #define isPushable(s)                                           (s).isplayermodel
 
-       float player_multijump;
-       float player_jumpheight;
+       //float player_multijump;
+       //float player_jumpheight;
 
        #define PHYS_INPUT_ANGLES(s)                            input_angles
 // TODO
@@ -74,11 +77,11 @@ bool IsFlying(entity a);
        #define GAMEPLAYFIX_GRAVITYUNAFFECTEDBYTICRATE  !!(moveflags & MOVEFLAG_GRAVITYUNAFFECTEDBYTICRATE)
        #define GAMEPLAYFIX_NOGRAVITYONGROUND                   cvar("sv_gameplayfix_nogravityonground")
        #define GAMEPLAYFIX_Q2AIRACCELERATE                             cvar("sv_gameplayfix_q2airaccelerate")
-       #define GAMEPLAYFIX_EASIERWATERJUMP                     getstati(STAT_GAMEPLAYFIX_EASIERWATERJUMP)
-       #define GAMEPLAYFIX_DOWNTRACEONGROUND                   getstati(STAT_GAMEPLAYFIX_DOWNTRACEONGROUND)
-       #define GAMEPLAYFIX_STEPMULTIPLETIMES                   getstati(STAT_GAMEPLAYFIX_STEPMULTIPLETIMES)
-       #define GAMEPLAYFIX_UNSTICKPLAYERS                              getstati(STAT_GAMEPLAYFIX_UNSTICKPLAYERS)
-       #define GAMEPLAYFIX_STEPDOWN                                    getstati(STAT_GAMEPLAYFIX_STEPDOWN)
+       #define GAMEPLAYFIX_EASIERWATERJUMP                     STAT(GAMEPLAYFIX_EASIERWATERJUMP)
+       #define GAMEPLAYFIX_DOWNTRACEONGROUND                   STAT(GAMEPLAYFIX_DOWNTRACEONGROUND)
+       #define GAMEPLAYFIX_STEPMULTIPLETIMES                   STAT(GAMEPLAYFIX_STEPMULTIPLETIMES)
+       #define GAMEPLAYFIX_UNSTICKPLAYERS                              STAT(GAMEPLAYFIX_UNSTICKPLAYERS)
+       #define GAMEPLAYFIX_STEPDOWN                                    STAT(GAMEPLAYFIX_STEPDOWN)
 
        #define IS_DUCKED(s)                                            !!(s.flags & FL_DUCKED)
        #define SET_DUCKED(s)                                           s.flags |= FL_DUCKED
@@ -95,58 +98,57 @@ bool IsFlying(entity a);
        #define WAS_ONGROUND(s)                                         !!(s.lastflags & FL_ONGROUND)
 
        #define ITEMS_STAT(s)                                           (s).items
-       #define BUFFS(s)                                                        getstati(STAT_BUFFS)
-
-       #define PHYS_AMMO_FUEL(s)                                       getstati(STAT_FUEL)
-
-       #define PHYS_FROZEN(s)                                          getstati(STAT_FROZEN)
-
-       #define PHYS_DOUBLEJUMP                                         getstati(STAT_DOUBLEJUMP)
-
-       #define PHYS_BUGRIGS                                            getstati(STAT_BUGRIGS)
-       #define PHYS_BUGRIGS_ANGLE_SMOOTHING            getstati(STAT_BUGRIGS_ANGLE_SMOOTHING)
-       #define PHYS_BUGRIGS_PLANAR_MOVEMENT            getstati(STAT_BUGRIGS_PLANAR_MOVEMENT)
-       #define PHYS_BUGRIGS_REVERSE_SPEEDING           getstati(STAT_BUGRIGS_REVERSE_SPEEDING)
-       #define PHYS_BUGRIGS_FRICTION_FLOOR             getstatf(STAT_BUGRIGS_FRICTION_FLOOR)
-       #define PHYS_BUGRIGS_AIR_STEERING                       getstati(STAT_BUGRIGS_AIR_STEERING)
-       #define PHYS_BUGRIGS_FRICTION_BRAKE             getstatf(STAT_BUGRIGS_FRICTION_BRAKE)
-       #define PHYS_BUGRIGS_ACCEL                                      getstatf(STAT_BUGRIGS_ACCEL)
-       #define PHYS_BUGRIGS_SPEED_REF                          getstatf(STAT_BUGRIGS_SPEED_REF)
-       #define PHYS_BUGRIGS_SPEED_POW                          getstatf(STAT_BUGRIGS_SPEED_POW)
-       #define PHYS_BUGRIGS_STEER                                      getstatf(STAT_BUGRIGS_STEER)
-       #define PHYS_BUGRIGS_FRICTION_AIR                       getstatf(STAT_BUGRIGS_FRICTION_AIR)
-       #define PHYS_BUGRIGS_CAR_JUMPING                        getstatf(STAT_BUGRIGS_CAR_JUMPING)
-       #define PHYS_BUGRIGS_REVERSE_SPINNING           getstatf(STAT_BUGRIGS_REVERSE_SPINNING)
-       #define PHYS_BUGRIGS_REVERSE_STOPPING           getstatf(STAT_BUGRIGS_REVERSE_STOPPING)
-
-       #define PHYS_JUMPSPEEDCAP_MIN                           getstatf(STAT_MOVEVARS_JUMPSPEEDCAP_MIN)
-       #define PHYS_JUMPSPEEDCAP_MAX                           getstatf(STAT_MOVEVARS_JUMPSPEEDCAP_MAX)
-       #define PHYS_JUMPSPEEDCAP_DISABLE_ONRAMPS       getstati(STAT_MOVEVARS_JUMPSPEEDCAP_DISABLE_ONRAMPS)
-
-       #define PHYS_TRACK_CANJUMP(s)                           getstati(STAT_MOVEVARS_TRACK_CANJUMP)
+       #define BUFFS_STAT(s)                                           STAT(BUFFS)
+
+       #define PHYS_FROZEN(s)                                          STAT(FROZEN)
+
+       #define PHYS_DOUBLEJUMP                                         STAT(DOUBLEJUMP)
+
+       #define PHYS_BUGRIGS                                            STAT(BUGRIGS)
+       #define PHYS_BUGRIGS_ANGLE_SMOOTHING            STAT(BUGRIGS_ANGLE_SMOOTHING)
+       #define PHYS_BUGRIGS_PLANAR_MOVEMENT            STAT(BUGRIGS_PLANAR_MOVEMENT)
+       #define PHYS_BUGRIGS_REVERSE_SPEEDING           STAT(BUGRIGS_REVERSE_SPEEDING)
+       #define PHYS_BUGRIGS_FRICTION_FLOOR             STAT(BUGRIGS_FRICTION_FLOOR)
+       #define PHYS_BUGRIGS_AIR_STEERING                       STAT(BUGRIGS_AIR_STEERING)
+       #define PHYS_BUGRIGS_FRICTION_BRAKE             STAT(BUGRIGS_FRICTION_BRAKE)
+       #define PHYS_BUGRIGS_ACCEL                                      STAT(BUGRIGS_ACCEL)
+       #define PHYS_BUGRIGS_SPEED_REF                          STAT(BUGRIGS_SPEED_REF)
+       #define PHYS_BUGRIGS_SPEED_POW                          STAT(BUGRIGS_SPEED_POW)
+       #define PHYS_BUGRIGS_STEER                                      STAT(BUGRIGS_STEER)
+       #define PHYS_BUGRIGS_FRICTION_AIR                       STAT(BUGRIGS_FRICTION_AIR)
+       #define PHYS_BUGRIGS_CAR_JUMPING                        STAT(BUGRIGS_CAR_JUMPING)
+       #define PHYS_BUGRIGS_REVERSE_SPINNING           STAT(BUGRIGS_REVERSE_SPINNING)
+       #define PHYS_BUGRIGS_REVERSE_STOPPING           STAT(BUGRIGS_REVERSE_STOPPING)
+
+       #define PHYS_JUMPSPEEDCAP_MIN                           cvar_string("cl_jumpspeedcap_min")
+       #define PHYS_JUMPSPEEDCAP_MAX                           cvar_string("cl_jumpspeedcap_max")
+       #define PHYS_JUMPSPEEDCAP_DISABLE_ONRAMPS       STAT(MOVEVARS_JUMPSPEEDCAP_DISABLE_ONRAMPS)
+
+       #define PHYS_CL_TRACK_CANJUMP(s)                        STAT(MOVEVARS_CL_TRACK_CANJUMP)
+       #define PHYS_TRACK_CANJUMP(s)                           STAT(MOVEVARS_TRACK_CANJUMP)
        #define PHYS_ACCELERATE                                         getstatf(STAT_MOVEVARS_ACCELERATE)
        #define PHYS_AIRACCEL_QW(s)                                     getstatf(STAT_MOVEVARS_AIRACCEL_QW)
-       #define PHYS_AIRACCEL_QW_STRETCHFACTOR(s)       getstatf(STAT_MOVEVARS_AIRACCEL_QW_STRETCHFACTOR)
+       #define PHYS_AIRACCEL_QW_STRETCHFACTOR(s)       STAT(MOVEVARS_AIRACCEL_QW_STRETCHFACTOR, s)
        #define PHYS_AIRACCEL_SIDEWAYS_FRICTION         getstatf(STAT_MOVEVARS_AIRACCEL_SIDEWAYS_FRICTION)
        #define PHYS_AIRACCELERATE                                      getstatf(STAT_MOVEVARS_AIRACCELERATE)
        #define PHYS_AIRCONTROL                                         getstatf(STAT_MOVEVARS_AIRCONTROL)
-       #define PHYS_AIRCONTROL_PENALTY                         getstatf(STAT_MOVEVARS_AIRCONTROL_PENALTY)
-       #define PHYS_AIRCONTROL_POWER                           getstatf(STAT_MOVEVARS_AIRCONTROL_POWER)
-       #define PHYS_AIRSPEEDLIMIT_NONQW(s)                     getstatf(STAT_MOVEVARS_AIRSPEEDLIMIT_NONQW)
+       #define PHYS_AIRCONTROL_PENALTY                         STAT(MOVEVARS_AIRCONTROL_PENALTY)
+       #define PHYS_AIRCONTROL_POWER                           STAT(MOVEVARS_AIRCONTROL_POWER)
+       #define PHYS_AIRSPEEDLIMIT_NONQW(s)                     STAT(MOVEVARS_AIRSPEEDLIMIT_NONQW, s)
        #define PHYS_AIRSTOPACCELERATE                          getstatf(STAT_MOVEVARS_AIRSTOPACCELERATE)
-       #define PHYS_AIRSTRAFEACCEL_QW(s)                       getstatf(STAT_MOVEVARS_AIRSTRAFEACCEL_QW)
+       #define PHYS_AIRSTRAFEACCEL_QW(s)                       STAT(MOVEVARS_AIRSTRAFEACCEL_QW, s)
        #define PHYS_AIRSTRAFEACCELERATE(s)                     getstatf(STAT_MOVEVARS_AIRSTRAFEACCELERATE)
-       #define PHYS_ENTGRAVITY(s)                                      getstatf(STAT_MOVEVARS_ENTGRAVITY)
+       #define PHYS_ENTGRAVITY(s)                                      STAT(MOVEVARS_ENTGRAVITY)
        #define PHYS_FRICTION                                           getstatf(STAT_MOVEVARS_FRICTION)
-       #define PHYS_FRICTION_SLICK                                     getstatf(STAT_MOVEVARS_FRICTION_SLICK)
-       #define PHYS_FRICTION_ONLAND                            getstatf(STAT_MOVEVARS_FRICTION_ONLAND)
-       #define PHYS_GRAVITY                                            getstatf(STAT_MOVEVARS_GRAVITY)
-       #define PHYS_HIGHSPEED                                          getstatf(STAT_MOVEVARS_HIGHSPEED)
+       #define PHYS_FRICTION_SLICK                                     STAT(MOVEVARS_FRICTION_SLICK)
+       #define PHYS_FRICTION_ONLAND                            STAT(MOVEVARS_FRICTION_ONLAND)
+       #define PHYS_GRAVITY                                            STAT(MOVEVARS_GRAVITY)
+       #define PHYS_HIGHSPEED                                          STAT(MOVEVARS_HIGHSPEED)
        #define PHYS_JUMPVELOCITY                                       getstatf(STAT_MOVEVARS_JUMPVELOCITY)
        #define PHYS_MAXAIRSPEED(s)                                     getstatf(STAT_MOVEVARS_MAXAIRSPEED)
        #define PHYS_MAXAIRSTRAFESPEED                          getstatf(STAT_MOVEVARS_MAXAIRSTRAFESPEED)
        #define PHYS_MAXSPEED(s)                                        getstatf(STAT_MOVEVARS_MAXSPEED)
-       #define PHYS_STEPHEIGHT                                         getstatf(STAT_MOVEVARS_STEPHEIGHT)
+       #define PHYS_STEPHEIGHT                                         STAT(MOVEVARS_STEPHEIGHT)
        #define PHYS_STOPSPEED                                          getstatf(STAT_MOVEVARS_STOPSPEED)
        #define PHYS_WARSOWBUNNY_ACCEL                          getstatf(STAT_MOVEVARS_WARSOWBUNNY_ACCEL)
        #define PHYS_WARSOWBUNNY_BACKTOSIDERATIO        getstatf(STAT_MOVEVARS_WARSOWBUNNY_BACKTOSIDERATIO)
@@ -154,19 +156,19 @@ bool IsFlying(entity a);
        #define PHYS_WARSOWBUNNY_TOPSPEED                       getstatf(STAT_MOVEVARS_WARSOWBUNNY_TOPSPEED)
        #define PHYS_WARSOWBUNNY_TURNACCEL                      getstatf(STAT_MOVEVARS_WARSOWBUNNY_TURNACCEL)
 
-       #define PHYS_WALLFRICTION                                       getstati(STAT_MOVEVARS_WALLFRICTION)
+       #define PHYS_WALLFRICTION                                       STAT(MOVEVARS_WALLFRICTION)
 
-       #define PHYS_JETPACK_ACCEL_UP                           getstatf(STAT_JETPACK_ACCEL_UP)
-       #define PHYS_JETPACK_ACCEL_SIDE                         getstatf(STAT_JETPACK_ACCEL_SIDE)
-       #define PHYS_JETPACK_ANTIGRAVITY                        getstatf(STAT_JETPACK_ANTIGRAVITY)
-       #define PHYS_JETPACK_FUEL                                       getstatf(STAT_JETPACK_FUEL)
-       #define PHYS_JETPACK_MAXSPEED_UP                        getstatf(STAT_JETPACK_MAXSPEED_UP)
-       #define PHYS_JETPACK_MAXSPEED_SIDE                      getstatf(STAT_JETPACK_MAXSPEED_SIDE)
+       #define PHYS_JETPACK_ACCEL_UP                           STAT(JETPACK_ACCEL_UP)
+       #define PHYS_JETPACK_ACCEL_SIDE                         STAT(JETPACK_ACCEL_SIDE)
+       #define PHYS_JETPACK_ANTIGRAVITY                        STAT(JETPACK_ANTIGRAVITY)
+       #define PHYS_JETPACK_FUEL                                       STAT(JETPACK_FUEL)
+       #define PHYS_JETPACK_MAXSPEED_UP                        STAT(JETPACK_MAXSPEED_UP)
+       #define PHYS_JETPACK_MAXSPEED_SIDE                      STAT(JETPACK_MAXSPEED_SIDE)
 
-       #define PHYS_DODGING_FROZEN                                     getstati(STAT_DODGING_FROZEN)
+       #define PHYS_DODGING_FROZEN                                     STAT(DODGING_FROZEN)
 
-       #define PHYS_NOSTEP                                                     getstati(STAT_NOSTEP)
-       #define PHYS_JUMPSTEP                                           getstati(STAT_MOVEVARS_JUMPSTEP)
+       #define PHYS_NOSTEP                                                     STAT(NOSTEP)
+       #define PHYS_JUMPSTEP                                           STAT(MOVEVARS_JUMPSTEP)
 
 #elif defined(SVQC)
 
@@ -181,59 +183,55 @@ bool IsFlying(entity a);
        .vector stat_pl_crouch_max;
 
        .float stat_sv_airaccel_qw;
-       .float stat_sv_airstrafeaccel_qw;
-       .float stat_sv_airspeedlimit_nonqw;
+       .float stat_sv_airspeedlimit_nonqw = _STAT(MOVEVARS_AIRSPEEDLIMIT_NONQW);
        .float stat_sv_maxspeed;
-       .float stat_movement_highspeed;
-
-       .float stat_sv_friction_on_land;
-       .float stat_sv_friction_slick;
-
-       .float stat_doublejump;
-
-       .float stat_jumpspeedcap_min;
-       .float stat_jumpspeedcap_max;
-       .float stat_jumpspeedcap_disable_onramps;
-
-       .float stat_jetpack_accel_side;
-       .float stat_jetpack_accel_up;
-       .float stat_jetpack_antigravity;
-       .float stat_jetpack_fuel;
-       .float stat_jetpack_maxspeed_up;
-       .float stat_jetpack_maxspeed_side;
-       .float stat_gameplayfix_easierwaterjump;
-       .float stat_gameplayfix_downtracesupportsongroundflag;
-       .float stat_gameplayfix_stepmultipletimes;
-       .float stat_gameplayfix_unstickplayers;
-       .float stat_gameplayfix_stepdown;
-
-       .float stat_bugrigs;
-       .float stat_bugrigs_angle_smoothing;
-       .float stat_bugrigs_planar_movement;
-       .float stat_bugrigs_reverse_speeding;
-       .float stat_bugrigs_friction_floor;
-       .float stat_bugrigs_air_steering;
-       .float stat_bugrigs_friction_brake;
-       .float stat_bugrigs_accel;
-       .float stat_bugrigs_speed_ref;
-       .float stat_bugrigs_speed_pow;
-       .float stat_bugrigs_steer;
-       .float stat_bugrigs_friction_air;
-       .float stat_bugrigs_car_jumping;
-       .float stat_bugrigs_reverse_spinning;
-       .float stat_bugrigs_reverse_stopping;
+       .float stat_movement_highspeed = _STAT(MOVEVARS_HIGHSPEED);
+
+       .float stat_sv_friction_on_land = _STAT(MOVEVARS_FRICTION_ONLAND);
+       .float stat_sv_friction_slick = _STAT(MOVEVARS_FRICTION_SLICK);
+
+       .float stat_doublejump = _STAT(DOUBLEJUMP);
+
+       .string stat_jumpspeedcap_min;
+       .string stat_jumpspeedcap_max;
+       .float stat_jumpspeedcap_disable_onramps = _STAT(MOVEVARS_JUMPSPEEDCAP_DISABLE_ONRAMPS);
+
+       .float stat_jetpack_accel_side = _STAT(JETPACK_ACCEL_SIDE);
+       .float stat_jetpack_accel_up = _STAT(JETPACK_ACCEL_UP);
+       .float stat_jetpack_antigravity = _STAT(JETPACK_ANTIGRAVITY);
+       .float stat_jetpack_fuel = _STAT(JETPACK_FUEL);
+       .float stat_jetpack_maxspeed_up = _STAT(JETPACK_MAXSPEED_UP);
+       .float stat_jetpack_maxspeed_side = _STAT(JETPACK_MAXSPEED_SIDE);
+       .float stat_gameplayfix_easierwaterjump = _STAT(GAMEPLAYFIX_EASIERWATERJUMP);
+       .float stat_gameplayfix_downtracesupportsongroundflag = _STAT(GAMEPLAYFIX_DOWNTRACEONGROUND);
+       .float stat_gameplayfix_stepmultipletimes = _STAT(GAMEPLAYFIX_STEPMULTIPLETIMES);
+       .float stat_gameplayfix_unstickplayers = _STAT(GAMEPLAYFIX_UNSTICKPLAYERS);
+       .float stat_gameplayfix_stepdown = _STAT(GAMEPLAYFIX_STEPDOWN);
+
+       .float stat_bugrigs = _STAT(BUGRIGS);
+       .float stat_bugrigs_angle_smoothing = _STAT(BUGRIGS_ANGLE_SMOOTHING);
+       .float stat_bugrigs_planar_movement = _STAT(BUGRIGS_PLANAR_MOVEMENT);
+       .float stat_bugrigs_reverse_speeding = _STAT(BUGRIGS_REVERSE_SPEEDING);
+       .float stat_bugrigs_friction_floor = _STAT(BUGRIGS_FRICTION_FLOOR);
+       .float stat_bugrigs_air_steering = _STAT(BUGRIGS_AIR_STEERING);
+       .float stat_bugrigs_friction_brake = _STAT(BUGRIGS_FRICTION_BRAKE);
+       .float stat_bugrigs_accel = _STAT(BUGRIGS_ACCEL);
+       .float stat_bugrigs_speed_ref = _STAT(BUGRIGS_SPEED_REF);
+       .float stat_bugrigs_speed_pow = _STAT(BUGRIGS_SPEED_POW);
+       .float stat_bugrigs_steer = _STAT(BUGRIGS_STEER);
+       .float stat_bugrigs_friction_air = _STAT(BUGRIGS_FRICTION_AIR);
+       .float stat_bugrigs_car_jumping = _STAT(BUGRIGS_CAR_JUMPING);
+       .float stat_bugrigs_reverse_spinning = _STAT(BUGRIGS_REVERSE_SPINNING);
+       .float stat_bugrigs_reverse_stopping = _STAT(BUGRIGS_REVERSE_STOPPING);
 
        // new properties
        .float stat_sv_jumpvelocity;
-       .float stat_sv_airaccel_qw_stretchfactor;
        .float stat_sv_maxairstrafespeed;
        .float stat_sv_maxairspeed;
        .float stat_sv_airstrafeaccelerate;
        .float stat_sv_warsowbunny_turnaccel;
        .float stat_sv_airaccel_sideways_friction;
        .float stat_sv_aircontrol;
-       .float stat_sv_aircontrol_power;
-       .float stat_sv_aircontrol_penalty;
        .float stat_sv_warsowbunny_airforwardaccel;
        .float stat_sv_warsowbunny_topspeed;
        .float stat_sv_warsowbunny_accel;
@@ -244,8 +242,10 @@ bool IsFlying(entity a);
        .float stat_sv_airaccelerate;
        .float stat_sv_airstopaccelerate;
 
-       .float stat_nostep;
-       .float stat_jumpstep;
+       .float stat_nostep = _STAT(NOSTEP);
+       .float stat_jumpstep = _STAT(MOVEVARS_JUMPSTEP);
+
+       .bool stat_sv_track_canjump = _STAT(MOVEVARS_TRACK_CANJUMP);
 
        #define PHYS_INPUT_ANGLES(s)                            s.v_angle
        #define PHYS_WORLD_ANGLES(s)                            s.angles
@@ -295,9 +295,7 @@ bool IsFlying(entity a);
        #define WAS_ONGROUND(s)                                         !!((s).lastflags & FL_ONGROUND)
 
        #define ITEMS_STAT(s)                                           s.items
-       #define BUFFS(s)                                                        (s).buffs
-
-       #define PHYS_AMMO_FUEL(s)                                       s.ammo_fuel
+       #define BUFFS_STAT(s)                                           (s).buffs
 
        #define PHYS_FROZEN(s)                                          s.frozen
 
@@ -323,18 +321,19 @@ bool IsFlying(entity a);
        #define PHYS_JUMPSPEEDCAP_MAX                           autocvar_sv_jumpspeedcap_max
        #define PHYS_JUMPSPEEDCAP_DISABLE_ONRAMPS       autocvar_sv_jumpspeedcap_max_disable_on_ramps
 
-       #define PHYS_TRACK_CANJUMP(s)                           s.cvar_cl_movement_track_canjump
+       #define PHYS_CL_TRACK_CANJUMP(s)                        s.cvar_cl_movement_track_canjump
+       #define PHYS_TRACK_CANJUMP(s)                           s.stat_sv_track_canjump
        #define PHYS_ACCELERATE                                         self.stat_sv_accelerate
        #define PHYS_AIRACCEL_QW(s)                                     s.stat_sv_airaccel_qw
-       #define PHYS_AIRACCEL_QW_STRETCHFACTOR(s)       self.stat_sv_airaccel_qw_stretchfactor
+       #define PHYS_AIRACCEL_QW_STRETCHFACTOR(s)       STAT(MOVEVARS_AIRACCEL_QW_STRETCHFACTOR, s)
        #define PHYS_AIRACCEL_SIDEWAYS_FRICTION         self.stat_sv_airaccel_sideways_friction
        #define PHYS_AIRACCELERATE                                      self.stat_sv_airaccelerate
        #define PHYS_AIRCONTROL                                         self.stat_sv_aircontrol
-       #define PHYS_AIRCONTROL_PENALTY                         self.stat_sv_aircontrol_penalty
-       #define PHYS_AIRCONTROL_POWER                           self.stat_sv_aircontrol_power
-       #define PHYS_AIRSPEEDLIMIT_NONQW(s)                     s.stat_sv_airspeedlimit_nonqw
+       #define PHYS_AIRCONTROL_PENALTY                         STAT(MOVEVARS_AIRCONTROL_PENALTY, self)
+       #define PHYS_AIRCONTROL_POWER                           STAT(MOVEVARS_AIRCONTROL_POWER, self)
+       #define PHYS_AIRSPEEDLIMIT_NONQW(s)                     STAT(MOVEVARS_AIRSPEEDLIMIT_NONQW, s)
        #define PHYS_AIRSTOPACCELERATE                          self.stat_sv_airstopaccelerate
-       #define PHYS_AIRSTRAFEACCEL_QW(s)                       s.stat_sv_airstrafeaccel_qw
+       #define PHYS_AIRSTRAFEACCEL_QW(s)                       STAT(MOVEVARS_AIRSTRAFEACCEL_QW, s)
        #define PHYS_AIRSTRAFEACCELERATE(s)                     s.stat_sv_airstrafeaccelerate
        #define PHYS_ENTGRAVITY(s)                                      s.gravity
        #define PHYS_FRICTION                                           self.stat_sv_friction