def trigger_multiple(*qwp_extra): if qc.self.sounds == 1: engine.precache_sound('misc/secret.wav') qc.self.noise = 'misc/secret.wav' elif qc.self.sounds == 2: engine.precache_sound('misc/talk.wav') qc.self.noise = 'misc/talk.wav' elif qc.self.sounds == 3: engine.precache_sound('misc/trigger1.wav') qc.self.noise = 'misc/trigger1.wav' if not qc.self.wait: qc.self.wait = 0.2 qc.self.use = multi_use subs.InitTrigger() if qc.self.health: if qc.self.spawnflags & SPAWNFLAG_NOTOUCH: qc.objerror("health and notouch don't make sense\012") qc.self.max_health = qc.self.health qc.self.th_die = multi_killed qc.self.takedamage = defs.DAMAGE_YES qc.self.solid = defs.SOLID_BBOX qc.setorigin(qc.self, qc.self.origin) # make sure it links into the world else: if not (qc.self.spawnflags & SPAWNFLAG_NOTOUCH): qc.self.touch = multi_touch
def trigger_monsterjump(*qwp_extra): if not qc.self.speed: qc.self.speed = 200 if not qc.self.height: qc.self.height = 200 if qc.self.angles == Vector(0, 0, 0): qc.self.angles = Vector(0, 360, 0) subs.InitTrigger() qc.self.touch = trigger_monsterjump_touch
def trigger_teleport(*qwp_extra): subs.InitTrigger() qc.self.touch = teleport_touch # find the destination if not qc.self.target: qc.objerror('no target') qc.self.use = teleport_use if not (qc.self.spawnflags & SILENT): engine.precache_sound('ambience/hum1.wav') o = (qc.self.mins + qc.self.maxs) * 0.5 engine.ambientsound(o, 'ambience/hum1.wav', 0.5, defs.ATTN_STATIC)
def trigger_changelevel(*qwp_extra): if not qc.self.map: qc.objerror("chagnelevel trigger doesn't have map") subs.InitTrigger() qc.self.touch = changelevel_touch
def trigger_push(*qwp_extra): subs.InitTrigger() engine.precache_sound('ambience/windfly.wav') qc.self.touch = trigger_push_touch if not qc.self.speed: qc.self.speed = 1000
def trigger_hurt(*qwp_extra): subs.InitTrigger() qc.self.touch = hurt_touch if not qc.self.dmg: qc.self.dmg = 5
def trigger_onlyregistered(*qwp_extra): engine.precache_sound('misc/talk.wav') subs.InitTrigger() qc.self.touch = trigger_onlyregistered_touch
def trigger_voteexit(*qwp_extra): subs.InitTrigger() qc.self.touch = voteexit_touch qc.self.cnt = 0