9 float autocvar_sv_airaccel_qw;
10 float autocvar_sv_airstrafeaccel_qw;
11 float autocvar_sv_airspeedlimit_nonqw;
12 float autocvar_sv_airaccel_qw_stretchfactor;
13 float autocvar_sv_maxairstrafespeed;
14 float autocvar_sv_airstrafeaccelerate;
15 float autocvar_sv_warsowbunny_turnaccel;
16 float autocvar_sv_airaccel_sideways_friction;
17 float autocvar_sv_aircontrol;
18 float autocvar_sv_aircontrol_power;
19 float autocvar_sv_aircontrol_backwards;
20 float autocvar_sv_aircontrol_sidewards;
21 float autocvar_sv_aircontrol_penalty;
22 float autocvar_sv_warsowbunny_airforwardaccel;
23 float autocvar_sv_warsowbunny_topspeed;
24 float autocvar_sv_warsowbunny_accel;
25 float autocvar_sv_warsowbunny_backtosideratio;
26 float autocvar_sv_friction;
27 float autocvar_sv_accelerate;
28 float autocvar_sv_stopspeed;
29 float autocvar_sv_airaccelerate;
30 float autocvar_sv_airstopaccelerate;
31 float autocvar_sv_track_canjump;
32 string autocvar_g_physics_clientselect_options;
33 string autocvar_g_physics_clientselect_default;
34 bool autocvar_g_jump_grunt;
35 bool autocvar_g_physics_clientselect;
36 float autocvar_g_maxspeed;
37 float autocvar_g_movement_highspeed = 1;
38 bool autocvar_g_movement_highspeed_q3_compat = 0;
40 int autocvar_g_nick_flood_penalty_red;
41 int autocvar_g_nick_flood_penalty_yellow;
43 bool autocvar_speedmeter;
44 string autocvar_sv_jumpspeedcap_max;
45 float autocvar_sv_jumpspeedcap_max_disable_on_ramps;
46 string autocvar_sv_jumpspeedcap_min;
47 float autocvar_sv_jumpvelocity;
48 float autocvar_sv_jumpvelocity_crouch;
49 float autocvar_sv_maxairspeed;
50 float autocvar_sv_maxspeed;
51 bool autocvar_g_footsteps;
69 .float(
entity,
float) PlayerPhysplug;
80 #define PHYS_PL_MAX(s) STAT(PL_MAX, s) 81 #define PHYS_PL_MIN(s) STAT(PL_MIN, s) 82 #define PHYS_PL_CROUCH_MAX(s) STAT(PL_CROUCH_MAX, s) 83 #define PHYS_PL_CROUCH_MIN(s) STAT(PL_CROUCH_MIN, s) 85 #define PHYS_PL_VIEWOFS(s) STAT(PL_VIEW_OFS, s) 86 #define PHYS_PL_CROUCH_VIEWOFS(s) STAT(PL_CROUCH_VIEW_OFS, s) 88 #define PHYS_VIEWHEIGHT(s) STAT(VIEWHEIGHT, s) 89 #define PHYS_HEALTH(s) STAT(HEALTH, s) 91 #define PHYS_ACCELERATE(s) STAT(MOVEVARS_ACCELERATE, s) 92 #define PHYS_AIRACCELERATE(s) STAT(MOVEVARS_AIRACCELERATE, s) 93 #define PHYS_AIRACCEL_QW(s) STAT(MOVEVARS_AIRACCEL_QW, s) 94 #define PHYS_AIRACCEL_QW_STRETCHFACTOR(s) STAT(MOVEVARS_AIRACCEL_QW_STRETCHFACTOR, s) 95 #define PHYS_AIRACCEL_SIDEWAYS_FRICTION(s) STAT(MOVEVARS_AIRACCEL_SIDEWAYS_FRICTION, s) 96 #define PHYS_AIRCONTROL(s) STAT(MOVEVARS_AIRCONTROL, s) 97 #define PHYS_AIRCONTROL_PENALTY(s) STAT(MOVEVARS_AIRCONTROL_PENALTY, s) 98 #define PHYS_AIRCONTROL_POWER(s) STAT(MOVEVARS_AIRCONTROL_POWER, s) 99 #define PHYS_AIRCONTROL_BACKWARDS(s) STAT(MOVEVARS_AIRCONTROL_BACKWARDS, s) 100 #define PHYS_AIRCONTROL_SIDEWARDS(s) STAT(MOVEVARS_AIRCONTROL_SIDEWARDS, s) 101 #define PHYS_AIRSPEEDLIMIT_NONQW(s) STAT(MOVEVARS_AIRSPEEDLIMIT_NONQW, s) 102 #define PHYS_AIRSTOPACCELERATE(s) STAT(MOVEVARS_AIRSTOPACCELERATE, s) 103 #define PHYS_AIRSTRAFEACCELERATE(s) STAT(MOVEVARS_AIRSTRAFEACCELERATE, s) 104 #define PHYS_AIRSTRAFEACCEL_QW(s) STAT(MOVEVARS_AIRSTRAFEACCEL_QW, s) 106 #define PHYS_AMMO_FUEL(s) STAT(FUEL, s) 108 #define PHYS_DODGING_FROZEN(s) STAT(DODGING_FROZEN, s) 110 #define PHYS_FRICTION(s) STAT(MOVEVARS_FRICTION, s) 111 #define PHYS_FRICTION_ONLAND(s) STAT(MOVEVARS_FRICTION_ONLAND, s) 112 #define PHYS_FRICTION_SLICK(s) STAT(MOVEVARS_FRICTION_SLICK, s) 114 #define PHYS_FROZEN(s) STAT(FROZEN, s) 116 #define PHYS_HIGHSPEED(s) STAT(MOVEVARS_HIGHSPEED, s) 118 #define PHYS_JETPACK_ACCEL_SIDE(s) STAT(JETPACK_ACCEL_SIDE, s) 119 #define PHYS_JETPACK_ACCEL_UP(s) STAT(JETPACK_ACCEL_UP, s) 120 #define PHYS_JETPACK_ANTIGRAVITY(s) STAT(JETPACK_ANTIGRAVITY, s) 121 #define PHYS_JETPACK_FUEL(s) STAT(JETPACK_FUEL, s) 122 #define PHYS_JETPACK_MAXSPEED_SIDE(s) STAT(JETPACK_MAXSPEED_SIDE, s) 123 #define PHYS_JETPACK_MAXSPEED_UP(s) STAT(JETPACK_MAXSPEED_UP, s) 124 #define PHYS_JETPACK_REVERSE_THRUST(s) STAT(JETPACK_REVERSE_THRUST, s) 126 #define PHYS_JUMPSPEEDCAP_DISABLE_ONRAMPS(s) STAT(MOVEVARS_JUMPSPEEDCAP_DISABLE_ONRAMPS) 127 #define PHYS_JUMPVELOCITY(s) STAT(MOVEVARS_JUMPVELOCITY, s) 128 #define PHYS_JUMPVELOCITY_CROUCH(s) STAT(MOVEVARS_JUMPVELOCITY_CROUCH, s) 130 #define PHYS_MAXAIRSPEED(s) STAT(MOVEVARS_MAXAIRSPEED, s) 131 #define PHYS_MAXAIRSTRAFESPEED(s) STAT(MOVEVARS_MAXAIRSTRAFESPEED, s) 132 #define PHYS_MAXSPEED(s) STAT(MOVEVARS_MAXSPEED, s) 134 #define PHYS_STOPSPEED(s) STAT(MOVEVARS_STOPSPEED, s) 136 #define PHYS_TRACK_CANJUMP(s) STAT(MOVEVARS_TRACK_CANJUMP, s) 138 #define PHYS_WARSOWBUNNY_ACCEL(s) STAT(MOVEVARS_WARSOWBUNNY_ACCEL, s) 139 #define PHYS_WARSOWBUNNY_AIRFORWARDACCEL(s) STAT(MOVEVARS_WARSOWBUNNY_AIRFORWARDACCEL, s) 140 #define PHYS_WARSOWBUNNY_BACKTOSIDERATIO(s) STAT(MOVEVARS_WARSOWBUNNY_BACKTOSIDERATIO, s) 141 #define PHYS_WARSOWBUNNY_TOPSPEED(s) STAT(MOVEVARS_WARSOWBUNNY_TOPSPEED, s) 142 #define PHYS_WARSOWBUNNY_TURNACCEL(s) STAT(MOVEVARS_WARSOWBUNNY_TURNACCEL, s) 144 #define PHYS_SLICK_APPLYGRAVITY(s) STAT(SLICK_APPLYGRAVITY) 146 #define PHYS_INPUT_BUTTON_ATCK(s) PHYS_INPUT_BUTTON_BUTTON1(s) 147 #define PHYS_INPUT_BUTTON_JUMP(s) PHYS_INPUT_BUTTON_BUTTON2(s) 148 #define PHYS_INPUT_BUTTON_ATCK2(s) PHYS_INPUT_BUTTON_BUTTON3(s) 149 #define PHYS_INPUT_BUTTON_ZOOM(s) PHYS_INPUT_BUTTON_BUTTON4(s) 150 #define PHYS_INPUT_BUTTON_CROUCH(s) PHYS_INPUT_BUTTON_BUTTON5(s) 151 #define PHYS_INPUT_BUTTON_HOOK(s) PHYS_INPUT_BUTTON_BUTTON6(s) 152 #define PHYS_INPUT_BUTTON_INFO(s) PHYS_INPUT_BUTTON_BUTTON7(s) 153 #define PHYS_INPUT_BUTTON_DRAG(s) PHYS_INPUT_BUTTON_BUTTON8(s) 154 #define PHYS_INPUT_BUTTON_USE(s) PHYS_INPUT_BUTTON_BUTTON_USE(s) 155 #define PHYS_INPUT_BUTTON_CHAT(s) PHYS_INPUT_BUTTON_BUTTON_CHAT(s) 156 #define PHYS_INPUT_BUTTON_PRYDON(s) PHYS_INPUT_BUTTON_BUTTON_PRYDON(s) 157 #define PHYS_INPUT_BUTTON_ZOOMSCRIPT(s) PHYS_INPUT_BUTTON_BUTTON9(s) 158 #define PHYS_INPUT_BUTTON_JETPACK(s) PHYS_INPUT_BUTTON_BUTTON10(s) 159 #define PHYS_INPUT_BUTTON_DODGE(s) PHYS_INPUT_BUTTON_BUTTON11(s) 160 #define PHYS_INPUT_BUTTON_MINIGAME(s) PHYS_INPUT_BUTTON_BUTTON12(s) 168 localcmd(
"alias +jetpack +button10\n");
169 localcmd(
"alias -jetpack -button10\n");
171 localcmd(
"alias +dodge +button11\n");
172 localcmd(
"alias -dodge -button11\n");
178 #define PHYS_INPUT_BUTTON_BACKWARD(s) (PHYS_INPUT_MOVEVALUES(s).x < 0) 179 #define PHYS_INPUT_BUTTON_FORWARD(s) (PHYS_INPUT_MOVEVALUES(s).x > 0) 180 #define PHYS_INPUT_BUTTON_LEFT(s) (PHYS_INPUT_MOVEVALUES(s).y < 0) 181 #define PHYS_INPUT_BUTTON_RIGHT(s) (PHYS_INPUT_MOVEVALUES(s).y > 0) 185 #define PHYS_INPUT_BUTTON_MASK(s) ( \ 186 (BIT(0) * PHYS_INPUT_BUTTON_ATCK(s)) \ 187 | (BIT(1) * PHYS_INPUT_BUTTON_JUMP(s)) \ 188 | (BIT(2) * PHYS_INPUT_BUTTON_ATCK2(s)) \ 189 | (BIT(3) * PHYS_INPUT_BUTTON_ZOOM(s)) \ 190 | (BIT(4) * PHYS_INPUT_BUTTON_CROUCH(s)) \ 191 | (BIT(5) * PHYS_INPUT_BUTTON_HOOK(s)) \ 192 | (BIT(6) * PHYS_INPUT_BUTTON_USE(s)) \ 193 | (BIT(7) * PHYS_INPUT_BUTTON_BACKWARD(s)) \ 194 | (BIT(8) * PHYS_INPUT_BUTTON_FORWARD(s)) \ 195 | (BIT(9) * PHYS_INPUT_BUTTON_LEFT(s)) \ 196 | (BIT(10) * PHYS_INPUT_BUTTON_RIGHT(s)) \ 199 #define IS_JUMP_HELD(s) (!((s).flags & FL_JUMPRELEASED)) 200 #define SET_JUMP_HELD(s) ((s).flags &= ~FL_JUMPRELEASED) 201 #define UNSET_JUMP_HELD(s) ((s).flags |= FL_JUMPRELEASED) 203 #define WAS_ONGROUND(s) boolean((s).lastflags & FL_ONGROUND) 204 #define WAS_ONSLICK(s) boolean((s).lastflags & FL_ONSLICK) 206 #define IS_DUCKED(s) (boolean((s).flags & FL_DUCKED)) 207 #define SET_DUCKED(s) ((s).flags |= FL_DUCKED) 208 #define UNSET_DUCKED(s) ((s).flags &= ~FL_DUCKED) 210 #define ITEMS_STAT(s) ((s).items) 216 #define PHYS_FIXANGLE(s) ('0 0 0') 218 string autocvar_cl_jumpspeedcap_min;
219 string autocvar_cl_jumpspeedcap_max;
238 #define IS_CLIENT(s) (((s).isplayermodel & ISPLAYER_CLIENT) || (s) == csqcplayer) 239 #define IS_PLAYER(s) ((s).isplayermodel & ISPLAYER_PLAYER) 240 #define IS_NOT_A_CLIENT(s) (!(s).isplayermodel && (s) != csqcplayer) 241 #define IS_DEAD(s) (((s).classname == "ENT_CLIENT_MODEL") ? (s).csqcmodel_isdead : (GetResource((s), RES_HEALTH) <= 0)) 246 #define PHYS_INPUT_ANGLES(s) input_angles 248 #define PHYS_WORLD_ANGLES(s) input_angles 250 #define PHYS_INPUT_TIMELENGTH input_timelength 251 #define PHYS_INPUT_FRAMETIME serverdeltatime 253 #define PHYS_INPUT_MOVEVALUES(s) input_movevalues 254 #define PHYS_CS(s) (s) 256 #define PHYS_INPUT_BUTTON_BUTTON1(s) boolean(input_buttons & BIT(0)) 257 #define PHYS_INPUT_BUTTON_BUTTON2(s) boolean(input_buttons & BIT(1)) 258 #define PHYS_INPUT_BUTTON_BUTTON3(s) boolean(input_buttons & BIT(2)) 259 #define PHYS_INPUT_BUTTON_BUTTON4(s) boolean(input_buttons & BIT(3)) 260 #define PHYS_INPUT_BUTTON_BUTTON5(s) boolean(input_buttons & BIT(4)) 261 #define PHYS_INPUT_BUTTON_BUTTON6(s) boolean(input_buttons & BIT(5)) 262 #define PHYS_INPUT_BUTTON_BUTTON7(s) boolean(input_buttons & BIT(6)) 263 #define PHYS_INPUT_BUTTON_BUTTON8(s) boolean(input_buttons & BIT(7)) 264 #define PHYS_INPUT_BUTTON_BUTTON_USE(s) boolean(input_buttons & BIT(8)) 265 #define PHYS_INPUT_BUTTON_BUTTON_CHAT(s) boolean(input_buttons & BIT(9)) 266 #define PHYS_INPUT_BUTTON_BUTTON_PRYDON(s) boolean(input_buttons & BIT(10)) 267 #define PHYS_INPUT_BUTTON_BUTTON9(s) boolean(input_buttons & BIT(11)) 268 #define PHYS_INPUT_BUTTON_BUTTON10(s) boolean(input_buttons & BIT(12)) 269 #define PHYS_INPUT_BUTTON_BUTTON11(s) boolean(input_buttons & BIT(13)) 270 #define PHYS_INPUT_BUTTON_BUTTON12(s) boolean(input_buttons & BIT(14)) 271 #define PHYS_INPUT_BUTTON_BUTTON13(s) boolean(input_buttons & BIT(15)) 272 #define PHYS_INPUT_BUTTON_BUTTON14(s) boolean(input_buttons & BIT(16)) 273 #define PHYS_INPUT_BUTTON_BUTTON15(s) boolean(input_buttons & BIT(17)) 274 #define PHYS_INPUT_BUTTON_BUTTON16(s) boolean(input_buttons & BIT(18)) 276 #define PHYS_INVEHICLE(s) (boolean(hud != HUD_NORMAL)) 278 #define PHYS_JUMPSPEEDCAP_MIN autocvar_cl_jumpspeedcap_min 279 #define PHYS_JUMPSPEEDCAP_MAX autocvar_cl_jumpspeedcap_max 281 #define PHYS_CL_TRACK_CANJUMP(s) STAT(MOVEVARS_CL_TRACK_CANJUMP, s) 285 #define PHYS_FIXANGLE(s) ((s).fixangle) 287 bool Physics_Valid(
string thecvar);
289 void Physics_UpdateStats(
entity this);
294 .string jumpspeedcap_min;
295 .string jumpspeedcap_max;
300 #define PHYS_INPUT_ANGLES(s) ((s).v_angle) 301 #define PHYS_WORLD_ANGLES(s) ((s).angles) 303 #define PHYS_INPUT_TIMELENGTH frametime 304 #define PHYS_INPUT_FRAMETIME sys_frametime 306 #define PHYS_INPUT_MOVEVALUES(s) CS(s).movement 307 #define PHYS_CS(s) CS(s) 309 #define PHYS_INPUT_BUTTON_BUTTON1(s) (CS(s).button0) 310 #define PHYS_INPUT_BUTTON_BUTTON2(s) (CS(s).button2) 311 #define PHYS_INPUT_BUTTON_BUTTON3(s) (CS(s).button3) 312 #define PHYS_INPUT_BUTTON_BUTTON4(s) (CS(s).button4) 313 #define PHYS_INPUT_BUTTON_BUTTON5(s) (CS(s).button5) 314 #define PHYS_INPUT_BUTTON_BUTTON6(s) (CS(s).button6) 315 #define PHYS_INPUT_BUTTON_BUTTON7(s) (CS(s).button7) 316 #define PHYS_INPUT_BUTTON_BUTTON8(s) (CS(s).button8) 317 #define PHYS_INPUT_BUTTON_BUTTON_USE(s) (CS(s).buttonuse) 318 #define PHYS_INPUT_BUTTON_BUTTON_CHAT(s) (CS(s).buttonchat) 319 #define PHYS_INPUT_BUTTON_BUTTON_PRYDON(s) (CS(s).cursor_active) 320 #define PHYS_INPUT_BUTTON_BUTTON9(s) (CS(s).button9) 321 #define PHYS_INPUT_BUTTON_BUTTON10(s) (CS(s).button10) 322 #define PHYS_INPUT_BUTTON_BUTTON11(s) (CS(s).button11) 323 #define PHYS_INPUT_BUTTON_BUTTON12(s) (CS(s).button12) 324 #define PHYS_INPUT_BUTTON_BUTTON13(s) (CS(s).button13) 325 #define PHYS_INPUT_BUTTON_BUTTON14(s) (CS(s).button14) 326 #define PHYS_INPUT_BUTTON_BUTTON15(s) (CS(s).button15) 327 #define PHYS_INPUT_BUTTON_BUTTON16(s) (CS(s).button16) 329 #define PHYS_INVEHICLE(s) (boolean((s).vehicle != NULL)) 331 #define PHYS_JUMPSPEEDCAP_MIN autocvar_sv_jumpspeedcap_min 332 #define PHYS_JUMPSPEEDCAP_MAX autocvar_sv_jumpspeedcap_max 334 #define PHYS_CL_TRACK_CANJUMP(s) (CS_CVAR(s).cvar_cl_movement_track_canjump) 340 vector autocvar_sv_player_maxs =
'16 16 45';
341 vector autocvar_sv_player_mins =
'-16 -16 -24';
342 vector autocvar_sv_player_viewoffset =
'0 0 35';
343 vector autocvar_sv_player_crouch_maxs =
'16 16 25';
344 vector autocvar_sv_player_crouch_mins =
'-16 -16 -24';
345 vector autocvar_sv_player_crouch_viewoffset =
'0 0 20';
351 void unpause_update()
353 static bool waspaused;
355 if (ispaused == waspaused)
return;
356 waspaused = ispaused;
358 if (ispaused)
return;
359 int channel = MSG_C2S;
360 WriteHeader(channel, setpause);
367 bool ispaused =
boolean(ReadByte());
#define PHYS_INPUT_BUTTON_CHAT(s)
REPLICATE_INIT(float, cvar_cl_autotaunt)
#define REGISTER_NET_C2S(id)
#define NET_HANDLE(id, param)
void PM_UpdateButtons(entity this, entity store)
vector(float skel, float bonenum) _skel_get_boneabs_hidden
float AdjustAirAccelQW(float accelqw, float factor)