X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fcsqcprojectile.qc;h=ac58a90c3e36715d3c020156d3a5dab3c9d69f47;hb=71a907435f52ad97fcc478be530eab9bafdddab4;hp=31e5b7788513b7eb180cd929c10d46bae871fc08;hpb=50f674234c966c7ae5c6c2f702630a837111c4ab;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/csqcprojectile.qc b/qcsrc/server/csqcprojectile.qc index 31e5b7788..ac58a90c3 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; @@ -79,11 +80,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 +96,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) @@ -103,25 +114,3 @@ void UpdateCSQCProjectileAfterTeleport(entity e) e.SendFlags |= 0x08; } } - -.void(void) csqcprojectile_oldthink; -.float csqcprojectile_oldnextthink; - -void CSQCProjectile_Update_Think() -{ - UpdateCSQCProjectile(self); - self.think = self.csqcprojectile_oldthink; - self.nextthink = max(time, self.csqcprojectile_oldnextthink); -} - -void UpdateCSQCProjectileNextFrame(entity e) -{ - if(e.SendEntity == CSQCProjectile_SendEntity) - if(e.think != CSQCProjectile_Update_Think) - { - e.csqcprojectile_oldthink = e.think; - e.csqcprojectile_oldnextthink = e.nextthink; - e.think = CSQCProjectile_Update_Think; - e.nextthink = time; - } -}