r2325 - trunk/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Mon Apr 16 10:00:20 EDT 2007


Author: div0
Date: 2007-04-16 10:00:20 -0400 (Mon, 16 Apr 2007)
New Revision: 2325

Modified:
   trunk/data/qcsrc/server/waypointsprites.qc
Log:
make the "no attachment + nodepthtest" path set attachment for the local
player, so it does not break chase cam + cl_movement


Modified: trunk/data/qcsrc/server/waypointsprites.qc
===================================================================
--- trunk/data/qcsrc/server/waypointsprites.qc	2007-04-16 09:47:44 UTC (rev 2324)
+++ trunk/data/qcsrc/server/waypointsprites.qc	2007-04-16 14:00:20 UTC (rev 2325)
@@ -53,12 +53,11 @@
 	{
 		if(wp.exteriormodeltoclient == wp.owner)
 		{
+			setattachment(wp, world, "");
 #ifdef ATTACHMENT_WORKS_WITH_EF_NODEPTHTEST
-			setattachment(wp, world, "");
 			setorigin(wp, wp.origin + wp.exteriormodeltoclient.origin);
 #else
-			// setorigin(wp, wp.view_ofs + wp.exteriormodeltoclient.origin);
-			// has been done already by customizeentityforclient!
+			setorigin(wp, wp.view_ofs + wp.exteriormodeltoclient.origin);
 #endif
 			wp.exteriormodeltoclient = world;
 		}
@@ -94,11 +93,6 @@
 		if(time >= self.teleport_time)
 			doremove = TRUE;
 
-#ifndef ATTACHMENT_WORKS_WITH_EF_NODEPTHTEST
-	if(self.exteriormodeltoclient)
-		setorigin(self, self.exteriormodeltoclient.origin + self.view_ofs);
-#endif
-
 	if(doremove)
 		WaypointSprite_Kill(self);
 	else
@@ -141,7 +135,23 @@
 #ifdef ATTACHMENT_WORKS_WITH_EF_NODEPTHTEST
 	realorigin = self.exteriormodeltoclient.origin + self.origin;
 #else
-	realorigin = self.origin;
+	if(self.exteriormodeltoclient)
+	{
+		if(self.exteriormodeltoclient == other)
+		{
+			setattachment(self, other, "");
+			setorigin(self, self.view_ofs);
+			realorigin = other.origin + self.origin;
+		}
+		else
+		{
+			setattachment(self, world, "");
+			setorigin(self, self.exteriormodeltoclient.origin + self.view_ofs);
+			realorigin = self.origin;
+		}
+	}
+	else
+		realorigin = self.origin;
 #endif
 
 	distance = vlen(realorigin - porigin);
@@ -198,7 +208,6 @@
 		setorigin(wp, ofs);
 #else
 		wp.view_ofs = ofs;
-		setorigin(wp, ref.origin + ofs);
 #endif
 	}
 	else




More information about the nexuiz-commits mailing list