From 9821d21d584123f431c2130832ae67498985086c Mon Sep 17 00:00:00 2001 From: div0 Date: Sat, 7 Feb 2009 17:29:11 +0000 Subject: [PATCH] make sure flags grow back after being squished git-svn-id: svn://svn.icculus.org/nexuiz/trunk@5798 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/ctf.qc | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/data/qcsrc/server/ctf.qc b/data/qcsrc/server/ctf.qc index 9d79aa991..15a4d55ca 100644 --- a/data/qcsrc/server/ctf.qc +++ b/data/qcsrc/server/ctf.qc @@ -1,3 +1,6 @@ +#define FLAG_MIN (PL_MIN + '0 0 -13') +#define FLAG_MAX (PL_MAX + '0 0 -13') + .entity sprite; entity ctf_worldflaglist; // CTF flags in the map .entity ctf_worldflagnext; @@ -305,6 +308,15 @@ void FlagThink() self.nextthink = time + 0.1; + // sorry, we have to reset the flag size if it got squished by something + if(self.mins != FLAG_MIN || self.maxs != FLAG_MAX) + { + // if we can grow back, grow back + tracebox(self.origin, FLAG_MIN, FLAG_MAX, self.origin, MOVE_NOMONSTERS, self); + if(!trace_startsolid) + setsize(self, FLAG_MIN, FLAG_MAX); + } + if(self == ctf_worldflaglist) // only for the first flag { FOR_EACH_CLIENT(e) @@ -719,7 +731,7 @@ void spawnfunc_item_flag_team1() precache_sound (self.noise2); precache_sound (self.noise3); //setsize(self, '-16 -16 -37', '16 16 37'); - setsize(self, PL_MIN + '0 0 -13', PL_MAX + '0 0 -13'); + setsize(self, FLAG_MIN, FLAG_MAX); setorigin(self, self.origin + '0 0 37'); self.nextthink = time + 0.2; // start after doors etc self.think = place_flag; @@ -817,7 +829,7 @@ void spawnfunc_item_flag_team2() precache_sound (self.noise2); precache_sound (self.noise3); //setsize(self, '-16 -16 -37', '16 16 37'); - setsize(self, PL_MIN + '0 0 -13', PL_MAX + '0 0 -13'); + setsize(self, FLAG_MIN, FLAG_MAX); setorigin(self, self.origin + '0 0 37'); self.nextthink = time + 0.2; // start after doors etc self.think = place_flag; -- 2.39.2