else
{
// we know that frame3 and frame4 fields, used by InterpolateAnimation, are left alone - but that is all we know!
- float doblend = FALSE;
+ float doblend = autocvar__animblend;
float onground = 0;
if(self == csqcplayer)
{
animdecide_init(self); // FIXME only do this on model change
animdecide_setimplicitstate(self, onground);
animdecide_setframes(self, doblend, anim_frame, anim_frame1time, anim_frame2, anim_frame2time);
+ print(sprintf("frames: %d %d\n", self.anim_frame, self.anim_frame2));
float sf = 0;
if(self.anim_saveframe != self.anim_frame || self.anim_saveframe1time != self.anim_frame1time)
sf |= CSQCMODEL_PROPERTY_FRAME;
CSQCModel_InterpolateAnimation_2To4_Do();
if(doblend)
{
- // build a skeletonobject
+ skeleton_from_frames(self);
}
else
{
- // remove skeletonobject if any
- // all is done
+ free_skeleton_from_frames(self);
+ // just in case, clear these
+ self.lerpfrac3 = 0;
+ self.lerpfrac4 = 0;
}
}
}