r4476 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sun Sep 21 08:35:39 EDT 2008
Author: div0
Date: 2008-09-21 08:35:38 -0400 (Sun, 21 Sep 2008)
New Revision: 4476
Modified:
trunk/data/qcsrc/server/portals.qc
Log:
add a misisng portal side check
Modified: trunk/data/qcsrc/server/portals.qc
===================================================================
--- trunk/data/qcsrc/server/portals.qc 2008-09-21 11:13:47 UTC (rev 4475)
+++ trunk/data/qcsrc/server/portals.qc 2008-09-21 12:35:38 UTC (rev 4476)
@@ -422,6 +422,9 @@
o = self.owner;
self.solid = SOLID_BBOX;
self.owner = world;
+
+ fixedmakevectors(self.angles);
+
FOR_EACH_PLAYER(e)
{
if(time < self.portal_activatetime)
@@ -430,6 +433,9 @@
if(e != o)
if(IS_INDEPENDENT_PLAYER(e) || IS_INDEPENDENT_PLAYER(o))
continue; // cannot go through someone else's portal
+ if((e.origin - self.origin) * v_forward < 0) // wrong side of the plane? no teleport
+ continue;
+
// if e would hit the portal in a frame...
// already teleport him
tracebox(e.origin, e.mins, e.maxs, e.origin + e.velocity * 2 * frametime, MOVE_NORMAL, e);
More information about the nexuiz-commits
mailing list