r4227 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Fri Aug 29 02:13:22 EDT 2008
Author: div0
Date: 2008-08-29 02:13:22 -0400 (Fri, 29 Aug 2008)
New Revision: 4227
Modified:
trunk/data/qcsrc/server/g_triggers.qc
trunk/data/qcsrc/server/miscfunctions.qc
trunk/data/qcsrc/server/t_plats.qc
Log:
make doors/plats not change their position in the spawn function (but defer that). Helps with attaching misc_follow.
Modified: trunk/data/qcsrc/server/g_triggers.qc
===================================================================
--- trunk/data/qcsrc/server/g_triggers.qc 2008-08-29 06:07:32 UTC (rev 4226)
+++ trunk/data/qcsrc/server/g_triggers.qc 2008-08-29 06:13:22 UTC (rev 4227)
@@ -257,6 +257,7 @@
if ( !(self.spawnflags & SPAWNFLAG_NOTOUCH) )
{
self.touch = multi_touch;
+ setorigin (self, self.origin); // make sure it links into the world
}
}
};
Modified: trunk/data/qcsrc/server/miscfunctions.qc
===================================================================
--- trunk/data/qcsrc/server/miscfunctions.qc 2008-08-29 06:07:32 UTC (rev 4226)
+++ trunk/data/qcsrc/server/miscfunctions.qc 2008-08-29 06:13:22 UTC (rev 4227)
@@ -1196,6 +1196,7 @@
#define INITPRIO_GAMETYPE_FALLBACK 1
#define INITPRIO_FINDTARGET 10
#define INITPRIO_SETLOCATION 90
+#define INITPRIO_LINKDOORS 91
#define INITPRIO_LAST 99
.void(void) initialize_entity;
Modified: trunk/data/qcsrc/server/t_plats.qc
===================================================================
--- trunk/data/qcsrc/server/t_plats.qc 2008-08-29 06:07:32 UTC (rev 4226)
+++ trunk/data/qcsrc/server/t_plats.qc 2008-08-29 06:13:22 UTC (rev 4227)
@@ -140,6 +140,11 @@
plat_go_down();
};
+void plat_init_movedown()
+{
+ setorigin (self, self.pos2);
+ self.state = 2;
+}
.string sound1, sound2;
@@ -214,10 +219,7 @@
self.use = plat_use;
}
else
- {
- setorigin (self, self.pos2);
- self.state = 2;
- }
+ InitializeEntity(self, plat_init_movedown, INITPRIO_SETLOCATION);
};
@@ -961,6 +963,13 @@
*/
+void door_init_startopen()
+{
+ setorigin (self, self.pos2);
+ self.pos2 = self.pos1;
+ self.pos1 = self.origin;
+}
+
void spawnfunc_func_door()
{
//if (!self.deathtype) // map makers can override this
@@ -1006,11 +1015,7 @@
// DOOR_START_OPEN is to allow an entity to be lighted in the closed position
// but spawn in the open position
if (self.spawnflags & DOOR_START_OPEN)
- {
- setorigin (self, self.pos2);
- self.pos2 = self.pos1;
- self.pos1 = self.origin;
- }
+ InitializeEntity(self, door_init_startopen, INITPRIO_SETLOCATION);
self.state = STATE_BOTTOM;
@@ -1027,7 +1032,7 @@
// LinkDoors can't be done until all of the doors have been spawned, so
// the sizes can be detected properly.
- InitializeEntity(self, LinkDoors, INITPRIO_FINDTARGET);
+ InitializeEntity(self, LinkDoors, INITPRIO_LINKDOORS);
};
/*
More information about the nexuiz-commits
mailing list