4 #include "../dpdefs/progsdefs.qh"
5 #include "../common/constants.qh"
6 #include "../common/util.qh"
7 #include "constants.qh"
11 float Casing_SendEntity(entity to, float sf)
13 WriteByte(MSG_ENTITY, ENT_CLIENT_CASING);
14 WriteByte(MSG_ENTITY, self.state); // actually type
15 WriteCoord(MSG_ENTITY, self.origin.x);
16 WriteCoord(MSG_ENTITY, self.origin.y);
17 WriteCoord(MSG_ENTITY, self.origin.z);
18 WriteShort(MSG_ENTITY, self.oldorigin.x); // acrually compressed velocity
19 WriteByte(MSG_ENTITY, self.angles.x * 256 / 360);
20 WriteByte(MSG_ENTITY, self.angles.y * 256 / 360);
21 WriteByte(MSG_ENTITY, self.angles.z * 256 / 360);
25 void SpawnCasing(vector vel, float randomvel, vector ang, vector avel, float randomavel, int casingtype, entity casingowner)
30 org = self.origin + self.view_ofs + self.weaponentity.spawnorigin.x * v_forward - self.weaponentity.spawnorigin.y * v_right + self.weaponentity.spawnorigin.z * v_up;
32 if(!sound_allowed(MSG_BROADCAST, casingowner))
40 e.oldorigin_x = compressShortVector(e.velocity);
42 Net_LinkEntity(e, true, 0.2, Casing_SendEntity);
43 // 0.2s should be enough time for all clients to receive this ent once, do the gibbage and be done with it