-#ifndef TRIGGERS_H
-#define TRIGGERS_H
+#pragma once
const float SF_TRIGGER_INIT = 1;
const float SF_TRIGGER_UPDATE = 2;
const float SPAWNFLAG_NOMESSAGE = 1;
const float SPAWNFLAG_NOTOUCH = 1;
-.void() trigger_touch;
+.bool pushable;
.float antiwall_flag; // Variable to define what to do with func_clientwall
// 0 == do nothing, 1 == deactivate, 2 == activate
.float height;
.float nottargeted;
-#define IFTARGETED if(!self.nottargeted && self.targetname != "")
+#define IFTARGETED if(!this.nottargeted && this.targetname != "")
.float lip;
void target_voicescript_next(entity pl);
void target_voicescript_clear(entity pl);
+
+void SUB_UseTargets_PreventReuse(entity this, entity actor, entity trigger);
#endif
+.float sub_target_used;
+
.float volume, atten;
.vector dest;
void FixSize(entity e);
#ifdef CSQC
-void trigger_common_read(bool withtarget);
-void trigger_remove_generic();
+void trigger_common_read(entity this, bool withtarget);
+void trigger_remove_generic(entity this);
.float active;
.string target;
const int ACTIVE_BUSY = 2;
const int ACTIVE_TOGGLE = 3;
#endif
-
-#endif