Merge branch 'vehicles_fix' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / mapobjects / triggers.qh
1 #pragma once
2 #include "defs.qh"
3
4 .bool pushable;
5
6 .float antiwall_flag; // Variable to define what to do with func_clientwall
7 // 0 == do nothing, 1 == deactivate, 2 == activate
8
9 .float height;
10
11 .float lip;
12
13 // handy fields used by a lot of the codebase, but more importantly used by map objects
14 .float cnt;
15 .float count;
16
17 // used elsewhere (will fix)
18 #ifdef SVQC
19 .string message2;
20
21 void trigger_common_write(entity this, bool withtarget);
22
23 string trigger_magicear_processmessage_forallears(entity source, float teamsay, entity privatesay, string msgin);
24
25 void target_voicescript_next(entity pl);
26 void target_voicescript_clear(entity pl);
27
28 void SUB_DontUseTargets(entity this, entity actor, entity trigger);
29 void SUB_UseTargets(entity this, entity actor, entity trigger);
30
31 void SUB_UseTargets_PreventReuse(entity this, entity actor, entity trigger);
32
33 // allow excluding certain .target* fields without needing to nullify them
34 // use BIT(1) through BIT(4)
35 void SUB_UseTargets_SkipTargets(entity this, entity actor, entity trigger, int skiptargets);
36
37 void generic_setactive(entity this, int act);
38 // generic methods for netlinked entities
39 void generic_netlinked_reset(entity this);
40 void generic_netlinked_setactive(entity this, int act);
41 // WARNING: DON'T USE, ONLY TO KEEP COMPATIBILITY BECAUSE OF SWITCH FROM .state TO .alive!!!!
42 void generic_netlinked_legacy_use(entity this, entity actor, entity trigger);
43 #endif
44
45 .float sub_target_used;
46
47 .float volume, atten;
48
49 .vector dest;
50
51 #ifdef CSQC
52 void trigger_common_read(entity this, bool withtarget);
53 void trigger_remove_generic(entity this);
54
55 .string target;
56 .string targetname;
57 #endif