]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/client/casings.qc
Merge remote-tracking branch 'origin/master' into samual/notification_updates
[xonotic/xonotic-data.pk3dir.git] / qcsrc / client / casings.qc
index d4d1041c80b5b2bfb63cbf1208021b9cb3ad55af..70ed9f4b07d74b597a39d67968bf99bdba7cd807 100644 (file)
@@ -77,13 +77,14 @@ void Ent_Casing(float isNew)
 {
        entity casing;
 
-    casing = RubbleNew("casing");
+       casing = RubbleNew("casing");
        casing.state = ReadByte();
        casing.silent = (casing.state & 0x80);
        casing.state = (casing.state & 0x7F);
        casing.origin_x = ReadCoord();
        casing.origin_y = ReadCoord();
        casing.origin_z = ReadCoord();
+       setorigin(casing, casing.origin);
        casing.velocity = decompressShortVector(ReadShort());
        casing.angles_x = ReadByte() * 360 / 256;
        casing.angles_y = ReadByte() * 360 / 256;
@@ -115,11 +116,16 @@ void Ent_Casing(float isNew)
                }
 
                setsize(casing, '0 0 -1', '0 0 -1');
-       }
-    else
-        Casing_Delete();
 
-       RubbleLimit("casing", autocvar_cl_casings_maxcount, Casing_Delete);
+               RubbleLimit("casing", autocvar_cl_casings_maxcount, Casing_Delete);
+       }
+       else
+       {
+               entity oldself = self;
+               self = casing;
+               Casing_Delete(); // yes, this IS stupid, but I don't need to duplicate all the read* stuff then
+               self = oldself;
+       }
 }
 
 void Casings_Precache()