]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
clear antilag data when respawning (fixes #862)
authorRudolf Polzer <divverent@xonotic.org>
Fri, 9 Dec 2011 08:28:11 +0000 (09:28 +0100)
committerRudolf Polzer <divverent@xonotic.org>
Fri, 9 Dec 2011 08:29:28 +0000 (09:29 +0100)
qcsrc/server/antilag.qc
qcsrc/server/antilag.qh
qcsrc/server/cl_client.qc

index 0f6434eab68e3330c5807a4f46c664e8721cdf9f..3db0540fc83f424f08d16340f80a18c52f0c6bf8 100644 (file)
@@ -111,3 +111,16 @@ void antilag_restore(entity e)
        setorigin(e, e.antilag_saved_origin);
        e.antilag_takenback = FALSE;
 }
+
+void antilag_clear(entity e)
+{
+       float i;
+
+       antilag_restore(e);
+       for(i = 0; i < ANTILAG_MAX_ORIGINS; ++i)
+       {
+               e.(antilag_times[i]) = -2342;
+               e.(antilag_origins[i]) = self.origin;
+       }
+       e.antilag_index = 0;
+}
index 08e33e2e58c07c9ed8f18f703342826f0ddd7949..cadb45a14d981fa0d2e9b26449dff0474eb38099 100644 (file)
@@ -3,6 +3,7 @@ vector antilag_takebackorigin(entity e, float t);
 vector antilag_takebackavgvelocity(entity e, float t0, float t1);
 void antilag_takeback(entity e, float t);
 void antilag_restore(entity e);
+void antilag_clear(entity e);
 
 #define ANTILAG_LATENCY(e) min(0.4, e.ping * 0.001)
 // add one ticrate?
index 1a6c9124b8d4f0df84772a80dfe64772a0800c63..3d393755a0f3749d33793dc7b6de1e574c1284c2 100644 (file)
@@ -1051,6 +1051,8 @@ void PutClientInServer (void)
 
                if(!self.alivetime)
                        self.alivetime = time;
+
+               antilag_clear(self);
        } else if(self.classname == "observer" || (g_ca && !allowed_to_spawn)) {
                PutObserverInServer ();
        }