From 6a6e16c95e08e57dd6c1534f12bf95a39db92353 Mon Sep 17 00:00:00 2001 From: FruitieX Date: Thu, 9 Jun 2011 15:45:11 +0300 Subject: [PATCH] don't get stuck on melee anim on some occasions --- qcsrc/server/cl_physics.qc | 2 +- qcsrc/server/cl_player.qc | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/qcsrc/server/cl_physics.qc b/qcsrc/server/cl_physics.qc index d2203c241..7f43fe66e 100644 --- a/qcsrc/server/cl_physics.qc +++ b/qcsrc/server/cl_physics.qc @@ -163,7 +163,7 @@ void PlayerJump (void) if (self.crouch) setanim(self, self.anim_duckjump, FALSE, TRUE, TRUE); - else if (self.animstate_startframe != self.anim_melee_x) // jump animation shouldn't override melee until we have animation blending + else if (self.animstate_startframe != self.anim_melee_x || (self.animstate_startframe == self.anim_melee_x && time - self.animstate_starttime >= 21/20)) // jump animation shouldn't override melee until we have animation blending (or until the anim finished, 21/20 = numframes/fps) setanim(self, self.anim_jump, FALSE, TRUE, TRUE); if(g_jump_grunt) diff --git a/qcsrc/server/cl_player.qc b/qcsrc/server/cl_player.qc index a9333a188..57732e6be 100644 --- a/qcsrc/server/cl_player.qc +++ b/qcsrc/server/cl_player.qc @@ -284,7 +284,7 @@ void player_anim (void) if (self.animstate_startframe != self.anim_jump_x) // don't perform another trace if already playing the jump anim { traceline(self.origin + '0 0 1' * PL_MIN_z, self.origin + '0 0 1' * (PL_MIN_z - autocvar_sv_player_jumpanim_minfall), TRUE, self); - if(!trace_startsolid && trace_fraction == 1 || self.animstate_startframe == self.anim_idle_x) // don't get stuck on idle animation in midair + if(!trace_startsolid && trace_fraction == 1 || self.animstate_startframe == self.anim_idle_x || (self.animstate_startframe == self.anim_melee_x && time - self.animstate_starttime >= 21/20)) // don't get stuck on idle animation in midair, nor melee after it finished { setanim(self, self.anim_jump, FALSE, TRUE, self.restart_jump); self.restart_jump = FALSE; @@ -323,7 +323,6 @@ void player_anim (void) } else setanim(self, self.anim_idle, TRUE, FALSE, FALSE); - print(ftos(time), " ", ftos(self.animstate_startframe), "\n"); } if (self.weaponentity) -- 2.39.2