X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fcsqcprojectile.qc;h=3c747bdbb2633c439df886e6b470da9aa82f5165;hb=1182fdc12fe84d3cd9489af075ce1c2e6a88facb;hp=d5b6697f25932c34ca6936951f6283fd235f9acd;hpb=2d72a533e3564facb0b617b026bddc9761960db8;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/csqcprojectile.qc b/qcsrc/server/csqcprojectile.qc index d5b6697f2..3c747bdbb 100644 --- a/qcsrc/server/csqcprojectile.qc +++ b/qcsrc/server/csqcprojectile.qc @@ -13,6 +13,7 @@ float CSQCProjectile_SendEntity(entity to, float sf) if(self.flags & FL_ONGROUND) sf |= 0x40; + ft = fr = 0; if(self.fade_time != 0 || self.fade_rate != 0) { ft = (self.fade_time - time) / sys_frametime; @@ -47,11 +48,13 @@ float CSQCProjectile_SendEntity(entity to, float sf) WriteByte(MSG_ENTITY, ft); WriteByte(MSG_ENTITY, fr); } + + WriteByte(MSG_ENTITY, self.realowner.team); } if(sf & 2) WriteByte(MSG_ENTITY, self.csqcprojectile_type); // TODO maybe put this into sf? - + return 1; } @@ -68,9 +71,9 @@ void CSQCProjectile_Check(entity e) void CSQCProjectile(entity e, float clientanimate, float type, float docull) { Net_LinkEntity(e, docull, 0, CSQCProjectile_SendEntity); - + e.csqcprojectile_clientanimate = clientanimate; - + if(e.movetype == MOVETYPE_TOSS || e.movetype == MOVETYPE_BOUNCE) { if(e.gravity == 0) @@ -79,11 +82,15 @@ void CSQCProjectile(entity e, float clientanimate, float type, float docull) else e.gravity = 0; - e.csqcprojectile_type = type; if(!sound_allowed(MSG_BROADCAST, e)) type |= 0x80; + e.csqcprojectile_type = type; } +// FIXME HACK +float ItemSend(entity to, float sf); +void ItemUpdate(entity item); +// END HACK void UpdateCSQCProjectile(entity e) { if(e.SendEntity == CSQCProjectile_SendEntity) @@ -91,6 +98,12 @@ void UpdateCSQCProjectile(entity e) // send new origin data e.SendFlags |= 0x01; } +// FIXME HACK + else if(e.SendEntity == ItemSend) + { + ItemUpdate(e); + } +// END HACK } void UpdateCSQCProjectileAfterTeleport(entity e)