}
if (s != "")
{
+ // Flag to set func_clientwall state
+ // 1 == deactivate, 2 == activate, 0 == do nothing
+ float aw_flag = self.antiwall_flag;
for(t = world; (t = find(t, targetname, s)); )
if(t.use)
{
}
else
{
+ if (t.classname == "func_clientwall" || t.classname == "func_clientillusionary")
+ t.antiwall_flag = aw_flag;
self = t;
other = stemp;
activator = act;
other = otemp;
}
-#ifdef SVQC
-void trigger_think_generic()
-{
- self.nextthink = time;
-
- entity e;
- if(self.trigger_touch)
- for(e = findradius((self.absmin + self.absmax) * 0.5, vlen(self.absmax - self.absmin) * 0.5 + 1); e; e = e.chain)
- {
- vector emin = e.absmin, emax = e.absmax;
- if(self.solid == SOLID_BSP)
- {
- emin -= '1 1 1';
- emax += '1 1 1';
- }
- if(boxesoverlap(emin, emax, self.absmin, self.absmax)) // quick
- if(WarpZoneLib_BoxTouchesBrush(emin, emax, self, e)) // accurate
- {
- other = e;
- self.trigger_touch();
- }
- }
-}
-#endif
-
#ifdef CSQC
void trigger_touch_generic(void() touchfunc)
{