// also don't use the predicted location if fixangle was set on both of
// the most recent server messages, as that cause means you are spectating
// someone or watching a cutscene of some sort
+ if (cl_nolerp.integer || cls.timedemo)
+ interpolate = false;
if (e == cl.entities + cl.playerentity && cl.movement_predicted && (!cl.fixangle[1] || !cl.fixangle[0]))
{
lerp = (cl.time - cl.movement_time[2]) / (cl.movement_time[0] - cl.movement_time[1]);
lerp = bound(0, lerp, 1);
- if (!interpolate || cl_nolerp.integer || cl.fixangle[0])
+ if (!interpolate)
lerp = 1;
VectorLerp(cl.movement_oldorigin, lerp, cl.movement_origin, origin);
VectorSet(angles, 0, cl.viewangles[1], 0);
ent->persistent.muzzleflash = 0;
VectorCopy(ent->state_current.origin, ent->persistent.trail_origin);
}
- else if (cls.timedemo || cl_nolerp.integer || DotProduct(odelta, odelta) > 1000*1000 || (cl.fixangle[0] && !cl.fixangle[1]))
+ else if (DotProduct(odelta, odelta) > 1000*1000 || (cl.fixangle[0] && !cl.fixangle[1]))
{
// don't interpolate the move
// (the fixangle[] check detects teleports, but not constant fixangles
static void CL_NetworkTimeReceived(double newtime)
{
- if (cl_nolerp.integer || cls.timedemo || (cl.islocalgame && !sv_fixedframeratesingleplayer.integer))
+ if (cls.timedemo || (cl.islocalgame && !sv_fixedframeratesingleplayer.integer))
cl.mtime[1] = cl.mtime[0] = newtime;
else
{