]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/ent_cs.qc
Add a mutator hook for CopyBody
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / ent_cs.qc
index 64ddc4473586143bca0a9925103bbb0ec6c9f036..2a7b3f80c485ef413e246028834d20ad38d8156b 100644 (file)
@@ -61,8 +61,9 @@
                sf |= this.m_forceupdate;
                this.m_forceupdate = 0;
                bool valid =
-                   IS_PLAYER(player)             // player must be active
-                   || player == to               // player is self
+                       time > game_starttime
+                   && (IS_PLAYER(player)          // player must be active
+                   || player == to)               // player is self
                ;
                if (!valid) sf = 0;
                if (chan == MSG_ENTITY)
@@ -83,9 +84,8 @@
                return _entcs_send(this, to, sf, MSG_ENTITY);
        }
 
-       void entcs_think()
+       void entcs_think(entity this)
        {
-               SELFPARAM();
                this.nextthink = time + 0.033333333333;  // TODO: increase this to like 0.15 once the client can do smoothing
                entity o = this.owner;
                int i = 1;
        void entcs_detach(entity player)
        {
                if (!player.entcs) return;
-               remove(player.entcs);
+               delete(player.entcs);
                player.entcs = NULL;
        }
 
                int n = this.sv_entnum;
                entity e = entcs_receiver(n);
                entcs_receiver(n, NULL);
-               if (e != this) remove(e);
+               if (e != this) delete(e);
        }
 
-       void entcs_think()
+       void entcs_think(entity this)
        {
-               SELFPARAM();
                entity e = CSQCModel_server2csqc(this.sv_entnum);
                if (e == NULL)
                {
        #undef X
                this.iflags |= IFLAG_ORIGIN;
                InterpolateOrigin_Note(this);
-               WITHSELF(this, getthink(this)());
+               getthink(this)(this);
                return true;
        }