X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fecs%2Fsystems%2Fcl_physics.qc;h=d4718514d232770721dc8d215b87e35dd51b8f0a;hb=deb4c0dce1468665f6328aea364ab570b93490f8;hp=206c80d96526f4001200bd8b6d0a56d9a05e3fd6;hpb=77c46a6022a0e5c6fa2541e858a0cd9cba8d6b0b;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/ecs/systems/cl_physics.qc b/qcsrc/ecs/systems/cl_physics.qc index 206c80d96..d4718514d 100644 --- a/qcsrc/ecs/systems/cl_physics.qc +++ b/qcsrc/ecs/systems/cl_physics.qc @@ -3,23 +3,20 @@ void sys_phys_fix(entity this, float dt) { this.team = myteam + 1; // is this correct? - PHYS_WATERJUMP_TIME(this) -= dt; - this.oldmovement = this.movement; this.movement = PHYS_INPUT_MOVEVALUES(this); this.items = STAT(ITEMS, this); - this.spectatorspeed = STAT(SPECTATORSPEED, this); if (!(PHYS_INPUT_BUTTON_JUMP(this))) // !jump UNSET_JUMP_HELD(this); // canjump = true PM_ClientMovement_UpdateStatus(this); } -bool sys_phys_override(entity this) +bool sys_phys_override(entity this, float dt) { // no vehicle prediction return hud != HUD_NORMAL; } -void sys_phys_monitor(entity this) {} +void sys_phys_monitor(entity this, float dt) {} void sys_phys_ai(entity this) {} @@ -27,4 +24,15 @@ void sys_phys_pregame_hold(entity this) {} void sys_phys_spectator_control(entity this) {} -void sys_phys_fixspeed(entity this, float maxspeed_mod) {} +void sys_phys_fixspeed(entity this, float maxspeed_mod) +{ + float spd = max(PHYS_MAXSPEED(this), PHYS_MAXAIRSPEED(this)) * maxspeed_mod; + if (this.speed != spd) { + this.speed = spd; + string temps = ftos(spd); + cvar_set("cl_forwardspeed", temps); + cvar_set("cl_backspeed", temps); + cvar_set("cl_sidespeed", temps); + cvar_set("cl_upspeed", temps); + } +}