From 524702fb9cd22efd4d49bd47eb300052128f4e0f Mon Sep 17 00:00:00 2001 From: div0 Date: Sun, 13 Jan 2008 11:18:11 +0000 Subject: [PATCH] tZork's trigger changes (trigger_delay, trigger_multiple.team); kill entities with "notq3a" "1" (we aren't Q3A, but we aren't TA either, so let's kill all TA-only entities by that and only show the Q3A ones) git-svn-id: svn://svn.icculus.org/nexuiz/trunk@3136 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/defs.qh | 1 + data/qcsrc/server/g_triggers.qc | 17 +++++++++++++++++ data/qcsrc/server/t_items.qc | 9 +++++++++ 3 files changed, 27 insertions(+) diff --git a/data/qcsrc/server/defs.qh b/data/qcsrc/server/defs.qh index 0230e2158..5ab521af2 100644 --- a/data/qcsrc/server/defs.qh +++ b/data/qcsrc/server/defs.qh @@ -379,3 +379,4 @@ float assault_attacker_team; .float notteam; .float notsingle; .float notfree; +.float notq3a; diff --git a/data/qcsrc/server/g_triggers.qc b/data/qcsrc/server/g_triggers.qc index 753775115..323e80714 100644 --- a/data/qcsrc/server/g_triggers.qc +++ b/data/qcsrc/server/g_triggers.qc @@ -181,6 +181,10 @@ void() multi_touch = if (other.classname != "player") return; + if(self.team) + if(self.team == other.team) + return; + // if the trigger has an angles field, check player's facing direction if (self.movedir != '0 0 0') { @@ -291,6 +295,19 @@ void() trigger_relay = self.use = SUB_UseTargets; }; +void() delay_use +{ + self.think = SUB_UseTargets; + self.nextthink = self.wait; +} + +void() trigger_delay +{ + if(!self.wait) + self.wait = 1; + + self.use = delay_use; +} //============================================================================= diff --git a/data/qcsrc/server/t_items.qc b/data/qcsrc/server/t_items.qc index b476d1fef..61bd5d4a7 100644 --- a/data/qcsrc/server/t_items.qc +++ b/data/qcsrc/server/t_items.qc @@ -305,6 +305,15 @@ void StartItem (string itemmodel, string pickupsound, float defaultrespawntime, } } + if(self.notq3a) + { + // We aren't TA or something like that, so we keep the Q3A entities + print("removed non-Q3A ", self.classname, "\n"); + startitem_failed = TRUE; + remove (self); + return; + } + if(self.targetname) { // target_give not yet supported; maybe later -- 2.39.2