]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/mutators/mutator/hook/hook.qc
Fix up more mutator hooks
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / mutators / mutator / hook / hook.qc
1 #ifdef IMPLEMENTATION
2 AUTOCVAR(g_grappling_hook, bool, false, _("let players spawn with the grappling hook which allows them to pull themselves up"));
3 #ifdef SVQC
4 REGISTER_MUTATOR(hook, autocvar_g_grappling_hook) {
5     MUTATOR_ONADD {
6         g_grappling_hook = true;
7         WEP_HOOK.ammo_factor = 0;
8     }
9     MUTATOR_ONROLLBACK_OR_REMOVE {
10         g_grappling_hook = false;
11         WEP_HOOK.ammo_factor = 1;
12     }
13 }
14
15 MUTATOR_HOOKFUNCTION(hook, BuildMutatorsString)
16 {
17     ret_string = strcat(ret_string, ":grappling_hook");
18 }
19
20 MUTATOR_HOOKFUNCTION(hook, BuildMutatorsPrettyString)
21 {
22     ret_string = strcat(ret_string, ", Hook");
23 }
24
25 MUTATOR_HOOKFUNCTION(hook, BuildGameplayTipsString)
26 {
27     ret_string = strcat(ret_string, "\n\n^3grappling hook^8 is enabled, press 'e' to use it\n");
28 }
29
30 MUTATOR_HOOKFUNCTION(hook, PlayerSpawn)
31 {
32     entity player = M_ARGV(0, entity);
33
34     player.offhand = OFFHAND_HOOK;
35 }
36
37 MUTATOR_HOOKFUNCTION(hook, FilterItem)
38 {
39     entity item = M_ARGV(0, entity);
40
41     return item.weapon == WEP_HOOK.m_id;
42 }
43
44 #endif
45 #endif