[nexuiz-commits] r7573 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Tue Sep 1 02:44:39 EDT 2009


Author: div0
Date: 2009-09-01 02:44:39 -0400 (Tue, 01 Sep 2009)
New Revision: 7573

Modified:
   trunk/data/qcsrc/server/csqcprojectile.qc
   trunk/data/qcsrc/server/csqcprojectile.qh
   trunk/data/qcsrc/server/t_teleporters.qc
Log:
teleport bit for projectiles


Modified: trunk/data/qcsrc/server/csqcprojectile.qc
===================================================================
--- trunk/data/qcsrc/server/csqcprojectile.qc	2009-09-01 06:09:41 UTC (rev 7572)
+++ trunk/data/qcsrc/server/csqcprojectile.qc	2009-09-01 06:44:39 UTC (rev 7573)
@@ -2,6 +2,7 @@
 
 float CSQCProjectile_SendEntity(entity to, float sf)
 {
+	// note: flag 0x20 = no trail please
 	sf = sf & 0x3F;
 
 	if(self.csqcprojectile_clientanimate)
@@ -72,6 +73,15 @@
 	}
 }
 
+void UpdateCSQCProjectileAfterTeleport(entity e)
+{
+	if(e.SendEntity == CSQCProjectile_SendEntity)
+	{
+		// send new origin data and mark as teleported
+		e.SendFlags |= 0x21;
+	}
+}
+
 .void(void) csqcprojectile_oldthink;
 .float csqcprojectile_oldnextthink;
 

Modified: trunk/data/qcsrc/server/csqcprojectile.qh
===================================================================
--- trunk/data/qcsrc/server/csqcprojectile.qh	2009-09-01 06:09:41 UTC (rev 7572)
+++ trunk/data/qcsrc/server/csqcprojectile.qh	2009-09-01 06:44:39 UTC (rev 7573)
@@ -2,5 +2,6 @@
 
 void CSQCProjectile(entity e, float clientanimate, float type, float docull);
 void UpdateCSQCProjectile(entity e);
+void UpdateCSQCProjectileAfterTeleport(entity e);
 void UpdateCSQCProjectileNextFrame(entity e);
 void CSQCProjectile_Check(entity e);

Modified: trunk/data/qcsrc/server/t_teleporters.qc
===================================================================
--- trunk/data/qcsrc/server/t_teleporters.qc	2009-09-01 06:09:41 UTC (rev 7572)
+++ trunk/data/qcsrc/server/t_teleporters.qc	2009-09-01 06:44:39 UTC (rev 7573)
@@ -79,7 +79,7 @@
 	player.velocity = to_velocity;
 	BITXOR_ASSIGN(player.effects, EF_TELEPORT_BIT);
 
-	UpdateCSQCProjectile(player);
+	UpdateCSQCProjectileAtferTeleport(player);
 
 	if(player.classname == "player")
 	{



More information about the nexuiz-commits mailing list