}
else
{
- self.lerpfrac = 1 - bound(0, (time - self.frame1time) / autocvar_cl_lerpanim_maxdelta_framegroups, 1);
+ if(self.frame2time == 0) // if frame2 was not previously displayed, only frame1 can make sense
+ self.lerpfrac = 0;
+ else
+ self.lerpfrac = 1 - bound(0, (time - self.frame1time) / autocvar_cl_lerpanim_maxdelta_framegroups, 1);
}
#endif
}
float islocalplayer = (self.entnum == player_localnum + 1);
float isnolocalplayer = (isplayer && (self.entnum != player_localnum + 1));
+ self.classname = "csqcmodel";
self.iflags |= IFLAG_ANGLES; // interpolate angles too
{ CSQCMODEL_HOOK_PREUPDATE }
self.f = r();
#define CSQCMODEL_PROPERTY_SCALED(flag,t,r,w,f,s,mi,ma) \
if(sf & flag) \
- self.f = r() / s;
+ self.f = (r() + mi) / s;
ALLPROPERTIES
#undef CSQCMODEL_PROPERTY_SCALED
#undef CSQCMODEL_PROPERTY
if(sf & CSQCMODEL_PROPERTY_MODELINDEX)
setmodelindex(self, self.modelindex); // this retrieves the .model key and sets mins/maxs/absmin/absmax
+ // FIXME do we WANT this to override mins/maxs?
if(sf & CSQCMODEL_PROPERTY_TELEPORTED)
{