]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - cl_main.c
beginnings of some proper server list code, commented out for now
[xonotic/darkplaces.git] / cl_main.c
index e251750ca0832f3c7166238dbd61b8dd218abf07..ad2f92c9d5fd362d577f2bb55c4a35bb82c853f6 100644 (file)
--- a/cl_main.c
+++ b/cl_main.c
@@ -541,7 +541,7 @@ static void CL_RelinkNetworkEntities(void)
 
                VectorCopy (neworg, ent->persistent.trail_origin);
                // persistent.modelindex will be updated by CL_LerpUpdate
-               if (ent->state_current.modelindex != ent->persistent.modelindex)
+               if (ent->state_current.modelindex != ent->persistent.modelindex || !ent->state_previous.active)
                        VectorCopy(neworg, oldorg);
 
                VectorCopy (neworg, ent->render.origin);
@@ -571,7 +571,19 @@ static void CL_RelinkNetworkEntities(void)
                if (effects)
                {
                        if (effects & EF_BRIGHTFIELD)
-                               CL_EntityParticles (ent);
+                       {
+                               if (gamemode == GAME_NEXIUZ)
+                               {
+                                       dlightcolor[0] += 100.0f;
+                                       dlightcolor[1] += 200.0f;
+                                       dlightcolor[2] += 400.0f;
+                                       // don't do trail if we have no previous location
+                                       if (ent->state_previous.active)
+                                               CL_RocketTrail (oldorg, neworg, 8, ent);
+                               }
+                               else
+                                       CL_EntityParticles (ent);
+                       }
                        if (effects & EF_MUZZLEFLASH)
                                ent->persistent.muzzleflash = 100.0f;
                        if (effects & EF_DIMLIGHT)
@@ -746,18 +758,6 @@ static void CL_RelinkNetworkEntities(void)
        }
 }
 
-static void CL_RelinkViewModel(void)
-{
-       entity_t *ent;
-       if (!r_drawviewmodel.integer || chase_active.integer || envmap || !r_drawentities.integer || cl.items & IT_INVISIBILITY || cl.stats[STAT_HEALTH] <= 0 || cl.viewent.render.model == NULL)
-               return;
-
-       ent = &cl.viewent;
-       // FIXME: set up view model here?
-       if (r_refdef.numentities < r_refdef.maxentities)
-               r_refdef.entities[r_refdef.numentities++] = &ent->render;
-}
-
 void CL_Effect(vec3_t org, int modelindex, int startframe, int framecount, float framerate)
 {
        int i;
@@ -951,7 +951,6 @@ void CL_RelinkEntities (void)
        CL_RelinkWorld();
        CL_RelinkStaticEntities();
        CL_RelinkNetworkEntities();
-       CL_RelinkViewModel();
        CL_RelinkEffects();
        CL_RelinkBeams();
        CL_MoveParticles();