diff --git a/engine/client/cl_ents.c b/engine/client/cl_ents.c index 8299f2172..b42034d98 100644 --- a/engine/client/cl_ents.c +++ b/engine/client/cl_ents.c @@ -2661,7 +2661,7 @@ guess_pm_type: if (cl.lerpplayers[num].frame != state->frame) { cl.lerpplayers[num].oldframechange = cl.lerpplayers[num].framechange; - cl.lerpplayers[num].framechange = cl.time; + cl.lerpplayers[num].framechange = cl.servertime; cl.lerpplayers[num].frame = state->frame; //don't care about position interpolation. @@ -3575,6 +3575,13 @@ void MVD_Interpolate(void) state->velocity[j] = oldstate->velocity[j] + f * (pplayer->oldv[j] - oldstate->velocity[j]); } } + + if (cl.lerpplayers[i].frame != state->frame) + { + cl.lerpplayers[i].oldframechange = cl.lerpplayers[i].framechange; + cl.lerpplayers[i].framechange = demtime; + cl.lerpplayers[i].frame = state->frame; + } } }