return; // only players
}
- // TODO: restructure this so that trigger_secret is more independent
- if (this.classname == "trigger_secret")
- {
- if (!IS_PLAYER(this.enemy))
- return;
- found_secrets = found_secrets + 1;
- WriteByte (MSG_ALL, SVC_FOUNDSECRET);
- }
-
- if (this.noise)
+ if (this.noise && this.noise != "")
{
_sound (this.enemy, CH_TRIGGER, this.noise, VOL_BASE, ATTEN_NORM);
}
{ // we can't just delete(this) here, because this is a touch function
// called while C code is looping through area links...
settouch(this, func_null);
+ this.use = func_null;
}
}
setthink(this, func_null);
this.nextthink = 0;
this.team = this.team_saved;
+ this.use = multi_use;
}
/*QUAKED spawnfunc_trigger_multiple (.5 .5 .5) ? notouch
else if (this.sounds == 3)
this.noise = "misc/trigger1.wav";
- if(this.noise)
+ if(this.noise && this.noise != "")
precache_sound(this.noise);
if (!this.wait)
this.wait = 0;
this.use = multi_use;
- if(this.wait == -1 && autocvar_sv_vq3compat)
+ if(this.wait == -1 && (q3compat & Q3COMPAT_DEFI))
this.wait = 0.1; // compatibility for q3df: "instant" return
EXACTTRIGGER_INIT;