X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fphysics%2Fplayer.qh;h=29c028f03267500aed3f84994ff0b524e14c6c7c;hb=16e64ff58cf65d7b3e0815aadb530580a6aa251b;hp=7e0d397f38a8f3bf139438e5422a2df8038d54ce;hpb=12ad79a6e66bd40fb5afea8618a4c8960892b129;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/physics/player.qh b/qcsrc/common/physics/player.qh index 7e0d397f3..29c028f03 100644 --- a/qcsrc/common/physics/player.qh +++ b/qcsrc/common/physics/player.qh @@ -15,12 +15,7 @@ .float swamp_slowdown; .float lastflags; .float lastground; -.float wasFlying; -#ifdef SVQC -.float spectatorspeed = _STAT(SPECTATORSPEED); -#elif defined(CSQC) -.float spectatorspeed; -#endif +.bool wasFlying; .int buttons_old; .vector movement_old; @@ -80,8 +75,9 @@ bool IsFlying(entity a); #define PHYS_JETPACK_MAXSPEED_UP(s) STAT(JETPACK_MAXSPEED_UP, s) #define PHYS_JETPACK_REVERSE_THRUST(s) STAT(JETPACK_REVERSE_THRUST, s) -#define PHYS_JUMPSPEEDCAP_DISABLE_ONRAMPS(s) STAT(MOVEVARS_JUMPSPEEDCAP_DISABLE_ONRAMPS, NULL) +#define PHYS_JUMPSPEEDCAP_DISABLE_ONRAMPS(s) STAT(MOVEVARS_JUMPSPEEDCAP_DISABLE_ONRAMPS) #define PHYS_JUMPVELOCITY(s) STAT(MOVEVARS_JUMPVELOCITY, s) +#define PHYS_JUMPVELOCITY_CROUCH(s) STAT(MOVEVARS_JUMPVELOCITY_CROUCH, s) #define PHYS_MAXAIRSPEED(s) STAT(MOVEVARS_MAXAIRSPEED, s) #define PHYS_MAXAIRSTRAFESPEED(s) STAT(MOVEVARS_MAXAIRSTRAFESPEED, s) @@ -97,7 +93,7 @@ bool IsFlying(entity a); #define PHYS_WARSOWBUNNY_TOPSPEED(s) STAT(MOVEVARS_WARSOWBUNNY_TOPSPEED, s) #define PHYS_WARSOWBUNNY_TURNACCEL(s) STAT(MOVEVARS_WARSOWBUNNY_TURNACCEL, s) -#define PHYS_SLICK_APPLYGRAVITY(s) STAT(SLICK_APPLYGRAVITY, NULL) +#define PHYS_SLICK_APPLYGRAVITY(s) STAT(SLICK_APPLYGRAVITY) #define PHYS_INPUT_BUTTON_ATCK(s) PHYS_INPUT_BUTTON_BUTTON1(s) #define PHYS_INPUT_BUTTON_JUMP(s) PHYS_INPUT_BUTTON_BUTTON2(s) @@ -105,15 +101,6 @@ bool IsFlying(entity a); #define PHYS_INPUT_BUTTON_ZOOM(s) PHYS_INPUT_BUTTON_BUTTON4(s) #define PHYS_INPUT_BUTTON_CROUCH(s) PHYS_INPUT_BUTTON_BUTTON5(s) #define PHYS_INPUT_BUTTON_HOOK(s) PHYS_INPUT_BUTTON_BUTTON6(s) - -#ifdef CSQC -STATIC_INIT(PHYS_INPUT_BUTTON_HOOK) -{ - localcmd("alias +hook +button6\n"); - localcmd("alias -hook -button6\n"); -} -#endif - #define PHYS_INPUT_BUTTON_INFO(s) PHYS_INPUT_BUTTON_BUTTON7(s) #define PHYS_INPUT_BUTTON_DRAG(s) PHYS_INPUT_BUTTON_BUTTON8(s) #define PHYS_INPUT_BUTTON_USE(s) PHYS_INPUT_BUTTON_BUTTON_USE(s) @@ -122,18 +109,19 @@ STATIC_INIT(PHYS_INPUT_BUTTON_HOOK) #define PHYS_INPUT_BUTTON_ZOOMSCRIPT(s) PHYS_INPUT_BUTTON_BUTTON9(s) #define PHYS_INPUT_BUTTON_JETPACK(s) PHYS_INPUT_BUTTON_BUTTON10(s) #define PHYS_INPUT_BUTTON_DODGE(s) PHYS_INPUT_BUTTON_BUTTON11(s) +#define PHYS_INPUT_BUTTON_MINIGAME(s) PHYS_INPUT_BUTTON_BUTTON14(s) #ifdef CSQC -STATIC_INIT(PHYS_INPUT_BUTTON_JETPACK) +STATIC_INIT(PHYS_INPUT_BUTTON) { + localcmd("alias +hook +button6\n"); + localcmd("alias -hook -button6\n"); + localcmd("alias +jetpack +button10\n"); - localcmd("alias -jetpack -button10\n"); -} + localcmd("alias -jetpack -button10\n"); -STATIC_INIT(PHYS_INPUT_BUTTON_DODGE) -{ - localcmd("alias +dodge +button11\n"); - localcmd("alias -dodge -button11\n"); + localcmd("alias +dodge +button11\n"); + localcmd("alias -dodge -button11\n"); } #endif @@ -190,6 +178,13 @@ STATIC_INIT(PHYS_INPUT_BUTTON_DODGE) .int items; .vector movement; + + // angles of the player's view (as opposed to their model which uses `.vector angles;`) in degrees + // x is pitch: positive means down (unlike .angles) + // y is yaw: between -180 and 180, increases when turning left + // z is roll: positive means tilted clockwise, usually is 0 + // when .fixangle is set, the player's view will change to the direction where the model is facing + // more info: https://gitlab.com/xonotic/xonotic-data.pk3dir/merge_requests/447#note_32816794 .vector v_angle; .entity hook; @@ -237,6 +232,8 @@ STATIC_INIT(PHYS_INPUT_BUTTON_DODGE) #define SET_DUCKED(s) ((s).flags |= FL_DUCKED) #define UNSET_DUCKED(s) ((s).flags &= ~FL_DUCKED) + #define PHYS_INVEHICLE(s) (boolean(hud != HUD_NORMAL)) + #define PHYS_JUMPSPEEDCAP_MIN autocvar_cl_jumpspeedcap_min #define PHYS_JUMPSPEEDCAP_MAX autocvar_cl_jumpspeedcap_max @@ -252,9 +249,6 @@ STATIC_INIT(PHYS_INPUT_BUTTON_DODGE) void PM_UpdateButtons(entity this, entity store); - .float stat_sv_airspeedlimit_nonqw = _STAT(MOVEVARS_AIRSPEEDLIMIT_NONQW); - .float stat_sv_maxspeed = _STAT(MOVEVARS_MAXSPEED); - /** Not real stats */ .string jumpspeedcap_min; .string jumpspeedcap_max; @@ -292,6 +286,8 @@ STATIC_INIT(PHYS_INPUT_BUTTON_DODGE) #define SET_DUCKED(s) ((s).crouch = true) #define UNSET_DUCKED(s) ((s).crouch = false) + #define PHYS_INVEHICLE(s) (boolean((s).vehicle != NULL)) + #define PHYS_JUMPSPEEDCAP_MIN autocvar_sv_jumpspeedcap_min #define PHYS_JUMPSPEEDCAP_MAX autocvar_sv_jumpspeedcap_max