From: Rudolf Polzer Date: Sat, 14 Aug 2010 20:30:35 +0000 (+0200) Subject: when teleporting, clear the "speed averaging" for multijump X-Git-Tag: xonotic-v0.1.0preview~361^2~2 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=18fcbe90782fb21a1163193f0e878a87ab3f4400;p=xonotic%2Fxonotic-data.pk3dir.git when teleporting, clear the "speed averaging" for multijump --- diff --git a/qcsrc/server/antilag.qc b/qcsrc/server/antilag.qc index 644a02344..8a628a1be 100644 --- a/qcsrc/server/antilag.qc +++ b/qcsrc/server/antilag.qc @@ -75,7 +75,7 @@ vector antilag_takebackorigin(entity e, float t) vector antilag_takebackavgvelocity(entity e, float t0, float t1) { vector o0, o1; - if(t0 == t1) + if(t0 >= t1) return '0 0 0'; o0 = antilag_takebackorigin(e, t0); o1 = antilag_takebackorigin(e, t1); diff --git a/qcsrc/server/cl_physics.qc b/qcsrc/server/cl_physics.qc index 9e5350095..b31e477d7 100644 --- a/qcsrc/server/cl_physics.qc +++ b/qcsrc/server/cl_physics.qc @@ -103,7 +103,7 @@ void PlayerJump (void) curspeed = max( vlen(vec2(self.velocity)), // current xy speed - vlen(vec2(antilag_takebackavgvelocity(self, time - 0.25, time))) // average xy topspeed over the last 0.25 secs + vlen(vec2(antilag_takebackavgvelocity(self, max(self.lastteleporttime + 0.05, time - 0.25), time))) // average xy topspeed over the last 0.25 secs ); makevectors(self.v_angle_y * '0 1 0'); wishvel = v_forward * self.movement_x + v_right * self.movement_y; diff --git a/qcsrc/server/t_teleporters.qc b/qcsrc/server/t_teleporters.qc index 795697dcd..26b79c551 100644 --- a/qcsrc/server/t_teleporters.qc +++ b/qcsrc/server/t_teleporters.qc @@ -132,8 +132,7 @@ void TeleportPlayer(entity teleporter, entity player, vector to, vector to_angle player.pushltime = 0; } - if(player.isbot) - player.lastteleporttime = time; + player.lastteleporttime = time; // stop player name display {