From: FruitieX Date: Fri, 27 May 2011 13:05:07 +0000 (+0300) Subject: add fly animation to code, probably still buggy X-Git-Tag: xonotic-v0.6.0~40^2~76^2~14 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=aebc8748bbef0f154ad1b425ec9cbeb38f814250;p=xonotic%2Fxonotic-data.pk3dir.git add fly animation to code, probably still buggy --- diff --git a/qcsrc/server/cl_player.qc b/qcsrc/server/cl_player.qc index d19584163..630222f7b 100644 --- a/qcsrc/server/cl_player.qc +++ b/qcsrc/server/cl_player.qc @@ -193,6 +193,7 @@ void player_setupanimsformodel() self.anim_backright = '21 1 1'; self.anim_backleft = '22 1 1'; self.anim_melee = '23 1 1'; + self.anim_fly = '24 1 1'; animparseerror = FALSE; animfilename = strcat(self.model, ".animinfo"); animfile = fopen(animfilename, FILE_READ); @@ -220,6 +221,7 @@ void player_setupanimsformodel() self.anim_backright = animparseline(animfile); self.anim_backleft = animparseline(animfile); self.anim_melee = animparseline(animfile); + self.anim_fly = animparseline(animfile); fclose(animfile); // derived anims @@ -257,7 +259,13 @@ void player_anim (void) if (!self.animstate_override) { - if (!(self.flags & FL_ONGROUND)) + if((self.animstate_startframe == self.anim_jump_x && time - self.animstate_starttime >= self.anim_jump_y/self.anim_jump_z) || (self.animstate_startframe == self.anim_duckjump_x && time - self.animstate_starttime >= self.anim_duckjump_y/self.anim_duckjump_z)) + { + print("self.anim_fly_x = ", ftos(self.anim_fly_x), "self.anim_fly_y = ", ftos(self.anim_fly_y), "self.anim_fly_z = ", ftos(self.anim_fly_z), "\n"); + setanim(self, self.anim_fly, FALSE, TRUE, TRUE); + } + + if (!(self.flags & FL_ONGROUND) && self.animstate_startframe != self.anim_fly_x) // don't trace if we are playing fly animation { if (self.crouch && self.animstate_startframe != 5) // don't perform another trace if already playing the crouch jump anim { diff --git a/qcsrc/server/defs.qh b/qcsrc/server/defs.qh index f3c754151..d1e237d18 100644 --- a/qcsrc/server/defs.qh +++ b/qcsrc/server/defs.qh @@ -149,6 +149,7 @@ float maxclients; .vector anim_backright; // player running backward and right .vector anim_backleft; // player running back and left .vector anim_melee; // player doing the melee action +.vector anim_fly; // player animation played after jump, if player is still in air. Also if falling from a ledge // weapon animation vectors: .vector anim_fire1;