]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/g_subs.qc
Add a TODO for reading species client-side
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / g_subs.qc
index 0649c89a1783a7bac23f00613eb77b94c8c8e15a..e119e5aba40040a359eca73d26d6a909f6f5d128 100644 (file)
@@ -1,4 +1,4 @@
-void SUB_Null() {};
+void SUB_Null() {}
 float SUB_True() { return 1; }
 float SUB_False() { return 0; }
 
@@ -41,7 +41,7 @@ void setanim(entity e, vector anim, float looping, float override, float restart
        e.animstate_override = override;
        e.frame = e.animstate_startframe;
        e.frame1time = servertime;
-};
+}
 
 void updateanim(entity e)
 {
@@ -56,7 +56,7 @@ void updateanim(entity e)
        }
        e.frame = e.animstate_startframe + bound(0, (time - e.animstate_starttime) * e.animstate_framerate, e.animstate_numframes - 1);
        //print(ftos(time), " -> ", ftos(e.frame), "\n");
-};
+}
 
 vector animfixfps(entity e, vector a)
 {
@@ -110,7 +110,7 @@ void SUB_VanishOrRemove (entity ent)
        if (ent.flags & FL_CLIENT)
        {
                // vanish
-               ent.model = "";
+               ent.alpha = -1;
                ent.effects = 0;
                ent.glow_size = 0;
                ent.pflags = 0;
@@ -124,12 +124,15 @@ void SUB_VanishOrRemove (entity ent)
 
 void SUB_SetFade_Think (void)
 {
+       if(self.alpha == 0)
+               self.alpha = 1;
        self.think = SUB_SetFade_Think;
-       self.nextthink = self.fade_time;
-       self.alpha = 1 - (time - self.fade_time) * self.fade_rate;
+       self.nextthink = time;
+       self.alpha -= frametime * self.fade_rate;
        if (self.alpha < 0.01)
                SUB_VanishOrRemove(self);
-       self.alpha = bound(0.01, self.alpha, 1);
+       else
+               self.nextthink = time;
 }
 
 /*
@@ -145,7 +148,6 @@ void SUB_SetFade (entity ent, float when, float fadetime)
        //      return;
        //ent.alpha = 1;
        ent.fade_rate = 1/fadetime;
-       ent.fade_time = when;
        ent.think = SUB_SetFade_Think;
        ent.nextthink = when;
 }
@@ -389,12 +391,9 @@ void tracebox_antilag_force_wz (entity source, vector v1, vector mi, vector ma,
        if (lag)
        {
                // take players back into the past
-               player = player_list;
-               while (player)
-               {
-                       antilag_takeback(player, time - lag);
-                       player = player.nextplayer;
-               }
+               FOR_EACH_PLAYER(player)
+                       if(player != forent)
+                               antilag_takeback(player, time - lag);
        }
 
        // do the trace
@@ -406,12 +405,9 @@ void tracebox_antilag_force_wz (entity source, vector v1, vector mi, vector ma,
        // restore players to current positions
        if (lag)
        {
-               player = player_list;
-               while (player)
-               {
-                       antilag_restore(player);
-                       player = player.nextplayer;
-               }
+               FOR_EACH_PLAYER(player)
+                       if(player != forent)
+                               antilag_restore(player);
        }
 
        // restore shooter solid type
@@ -825,7 +821,7 @@ void SetMovedir()
        }
 
        self.angles = '0 0 0';
-};
+}
 
 void InitTrigger()
 {
@@ -837,7 +833,7 @@ void InitTrigger()
        self.movetype = MOVETYPE_NONE;
        self.modelindex = 0;
        self.model = "";
-};
+}
 
 void InitSolidBSPTrigger()
 {
@@ -849,7 +845,7 @@ void InitSolidBSPTrigger()
        self.movetype = MOVETYPE_NONE; // why was this PUSH? -div0
 //     self.modelindex = 0;
        self.model = "";
-};
+}
 
 float InitMovingBrushTrigger()
 {
@@ -864,4 +860,4 @@ float InitMovingBrushTrigger()
                return 0;
        }
        return 1;
-};
+}