]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - cl_main.c
attempting to fix a warning about setjmp clobbering variables
[xonotic/darkplaces.git] / cl_main.c
index e4f59f635b8931c4c16e26c54a27a1e16e3025cb..c8f058e8556ec27aeb0ba8560e6881d2a300facf 100644 (file)
--- a/cl_main.c
+++ b/cl_main.c
@@ -1028,7 +1028,7 @@ void CL_LinkNetworkEntity(entity_t *e)
                        tempmatrix.m[1][3] = trace.endpos[1];
                        tempmatrix.m[2][3] = trace.endpos[2];
                        CL_AllocDlight(NULL, &tempmatrix, 100, e->persistent.muzzleflash, e->persistent.muzzleflash, e->persistent.muzzleflash, 0, 0, 0, -1, true, 0, 0.25, 0.25, 1, 1, LIGHTFLAG_NORMALMODE | LIGHTFLAG_REALTIMEMODE);
-                       e->persistent.muzzleflash -= cl.frametime * 10;
+                       e->persistent.muzzleflash -= (cl.time - cl.oldtime) * 10;
                }
                // LordHavoc: if the model has no flags, don't check each
                if (e->render.model && e->render.model->flags && (!e->state_current.tagentity && !(e->render.flags & RENDER_VIEWMODEL)))
@@ -1488,6 +1488,7 @@ void CL_LerpPlayer(float frac)
 
 void CSQC_RelinkAllEntities (int drawmask)
 {
+       cl.num_brushmodel_entities = 0;
        CL_RelinkNetworkEntities(drawmask);
        if(drawmask & ENTMASK_ENGINE)
        {
@@ -1526,7 +1527,6 @@ int CL_ReadFromServer(void)
        r_refdef.extraupdate = !r_speeds.integer;
        r_refdef.numentities = 0;
        r_refdef.viewentitymatrix = identitymatrix;
-       cl.num_brushmodel_entities = 0;
 
        if (cls.state == ca_connected && cls.signon == SIGNONS)
        {
@@ -1541,6 +1541,7 @@ int CL_ReadFromServer(void)
                CL_ClientMovement_Replay();
                if(!csqc_loaded)        //[515]: csqc
                {
+                       cl.num_brushmodel_entities = 0;
                        CL_RelinkNetworkEntities(65535);
 
                        // move particles
@@ -1562,6 +1563,9 @@ int CL_ReadFromServer(void)
 
                // update view blend
                V_CalcViewBlend();
+
+               // update the r_refdef time again because cl.time may have changed
+               r_refdef.time = cl.time;
        }
 
        return 0;