From 324437bc6453bbc7e5ffabd2bf2eee4e98c988df Mon Sep 17 00:00:00 2001 From: savagex Date: Sun, 20 May 2007 14:12:14 +0000 Subject: [PATCH] added func_assault_wall, which disappears once its targeted target_objective has a health < 0 (forcefields etc.) git-svn-id: svn://svn.icculus.org/nexuiz/trunk@2632 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/assault.qc | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/data/qcsrc/server/assault.qc b/data/qcsrc/server/assault.qc index 0ae2639bb..4e23e8c18 100644 --- a/data/qcsrc/server/assault.qc +++ b/data/qcsrc/server/assault.qc @@ -202,6 +202,36 @@ void func_assault_destructible() { } +void assault_wall_think() { + local entity ent; + local float notvisible; + notvisible = 0; + ent = find(world, targetname, self.target); + while(ent) { + if(ent.classname == "target_objective" && ent.health < 0) + notvisible = 1; + ent = find(ent, targetname, self.target); + } + + if(notvisible) { + self.model = ""; + self.solid = SOLID_NOT; + } else { + self.model = self.mdl; + self.solid = SOLID_BSP; + } + + self.nextthink = time + 0.2; +} + +void func_assault_wall() { + self.classname = "func_assault_wall"; + self.mdl = self.model; + setmodel(self, self.mdl); + self.solid = SOLID_BSP; + self.think = assault_wall_think; + self.nextthink = time; +} // trigger new round // reset objectives, toggle spawnpoints, reset triggers, ... -- 2.39.2