r4344 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Thu Sep 4 11:20:35 EDT 2008
Author: div0
Date: 2008-09-04 11:20:35 -0400 (Thu, 04 Sep 2008)
New Revision: 4344
Modified:
trunk/data/qcsrc/server/portals.qc
Log:
make portal creation more symmetric
Modified: trunk/data/qcsrc/server/portals.qc
===================================================================
--- trunk/data/qcsrc/server/portals.qc 2008-09-04 14:38:03 UTC (rev 4343)
+++ trunk/data/qcsrc/server/portals.qc 2008-09-04 15:20:35 UTC (rev 4344)
@@ -346,9 +346,9 @@
// cleanup:
// when creating in-portal:
// disconnect
-// clear existing out-portal
-// make existing in-portal an out-portal and connect
+// clear existing in-portal
// set as in-portal
+// connect
// when creating out-portal:
// disconnect
// clear existing out-portal
@@ -362,14 +362,12 @@
// TODO: ensure only one portal shot at once
float Portal_SetInPortal(entity own, entity portal)
{
- if(own.portal_out)
+ if(own.portal_in)
{
- if(own.portal_in)
+ if(own.portal_out)
Portal_Disconnect(own.portal_in, own.portal_out);
- Portal_Remove(own.portal_out, 0);
+ Portal_Remove(own.portal_in, 0);
}
- if(own.portal_in)
- own.portal_out = own.portal_in;
own.portal_in = portal;
if(own.portal_out)
Portal_Connect(own.portal_in, own.portal_out);
@@ -377,15 +375,15 @@
}
float Portal_SetOutPortal(entity own, entity portal)
{
- if(!own.portal_in)
- return 0;
if(own.portal_out)
{
- Portal_Disconnect(own.portal_in, own.portal_out);
+ if(own.portal_in)
+ Portal_Disconnect(own.portal_in, own.portal_out);
Portal_Remove(own.portal_out, 0);
}
own.portal_out = portal;
- Portal_Connect(own.portal_in, own.portal_out);
+ if(own.portal_in)
+ Portal_Connect(own.portal_in, own.portal_out);
return 1;
}
void Portal_ClearAll(entity own)
More information about the nexuiz-commits
mailing list