From f619d333ded4ec268935177db358089102f9920c Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Thu, 22 Nov 2012 17:08:46 +0100 Subject: [PATCH] fix some more bugs. cl_csad now performs animation on the client. --- qcsrc/client/csqcmodel_hooks.qc | 3 ++- qcsrc/common/animdecide.qc | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/qcsrc/client/csqcmodel_hooks.qc b/qcsrc/client/csqcmodel_hooks.qc index 18418e968..9a3d0a240 100644 --- a/qcsrc/client/csqcmodel_hooks.qc +++ b/qcsrc/client/csqcmodel_hooks.qc @@ -609,6 +609,7 @@ void CSQCModel_Hook_PreDraw(float isplayer) if(trace_startsolid || trace_fraction < 1) flg |= FL_ONGROUND; } + animdecide_init(self); // FIXME only do this on model change animdecide_setframes(self, flg, doblend, anim_frame, anim_frame1time, anim_frame2, anim_frame2time); float sf = 0; if(self.anim_saveframe != self.anim_frame || self.anim_saveframe1time != self.anim_frame1time) @@ -625,7 +626,7 @@ void CSQCModel_Hook_PreDraw(float isplayer) self.lerpfrac = (doblend ? 0.5 : 0); self.frame = self.anim_frame; self.frame1time = self.anim_frame1time; - self.frame = self.anim_frame2; + self.frame2 = self.anim_frame2; self.frame2time = self.anim_frame2time; CSQCModel_InterpolateAnimation_2To4_Note(sf | CSQCMODEL_PROPERTY_LERPFRAC, FALSE); } diff --git a/qcsrc/common/animdecide.qc b/qcsrc/common/animdecide.qc index 9a76f5ffc..5a44848d4 100644 --- a/qcsrc/common/animdecide.qc +++ b/qcsrc/common/animdecide.qc @@ -249,16 +249,20 @@ void animdecide_setimplicitstate(entity e, float flg) if(!(e.anim_implicit_state & ANIMIMPLICITSTATE_INAIR) && (s & ANIMIMPLICITSTATE_INAIR)) { // ground to air transition - do we want to reset jump anim? +#if 0 if(e.anim_lower_action != ANIMACTION_JUMP || time > e.anim_lower_time + 0.2) if(e.anim_lower_implicit_action != ANIMACTION_JUMP || time > e.anim_lower_implicit_time + 0.2) { traceline(e.origin + '0 0 1' * e.maxs_z, e.origin + '0 0 1' * (e.mins_z - autocvar_sv_player_jumpanim_minfall), MOVE_NOMONSTERS, e); if(!trace_startsolid && trace_fraction == 1) { +#endif e.anim_lower_implicit_action = ANIMACTION_JUMP; e.anim_lower_implicit_time = time; +#if 0 } } +#endif } if(s != e.anim_implicit_state) -- 2.39.2