]> de.git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
fix bug with cl_nolerp 1 that caused playdemo to play back at timedemo speeds
authorhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Thu, 5 Apr 2007 10:31:42 +0000 (10:31 +0000)
committerhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Thu, 5 Apr 2007 10:31:42 +0000 (10:31 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@7055 d7cf8633-e32d-0410-b094-e92efae38249

cl_main.c
cl_parse.c

index 090bc4c573bf9b6d88689872b7793082b9008e95..a159d68490a0bc71038bf0632b7efc1296ab415d 100644 (file)
--- a/cl_main.c
+++ b/cl_main.c
@@ -892,11 +892,13 @@ void CL_UpdateNetworkEntity(entity_t *e, int recursionlimit, qboolean interpolat
        // 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);
index d5cc1b47795c3269d5c7eeab9702a4bc7c20e3a7..857398c9d39ba43a902787d9b95c91fa689e3186 100644 (file)
@@ -1620,7 +1620,7 @@ void CL_MoveLerpEntityStates(entity_t *ent)
                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
@@ -2767,7 +2767,7 @@ qboolean CL_ExaminePrintString(const char *text)
 
 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
        {