]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/mutators/mutator_melee_only.qc
Merge branch 'master' into Mario/vaporizer_damage
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / mutators / mutator_melee_only.qc
index 93e6edb5f24e4f1deae45332ffc1b44f0bf891db..c77bba51630a59378bbfe02a0714d7ce32413391 100644 (file)
@@ -1,44 +1,51 @@
+#include "../_all.qh"
+
+#include "mutator.qh"
+
 MUTATOR_HOOKFUNCTION(melee_SetStartItems)
 {
-       start_ammo_shells = 0;
-       warmup_start_ammo_shells = 0;
+       start_ammo_shells = warmup_start_ammo_shells = 0;
+       start_weapons = warmup_start_weapons = WEPSET_SHOTGUN;
 
-       start_weapons = WEPSET_SHOCKWAVE;
-       warmup_start_weapons = WEPSET_SHOCKWAVE;
+       return false;
+}
 
-       return FALSE;
+MUTATOR_HOOKFUNCTION(melee_ForbidThrowing)
+{
+       return true;
 }
 
 MUTATOR_HOOKFUNCTION(melee_FilterItem)
 {
        switch (self.items)
        {
-               case IT_5HP:
-               case IT_ARMOR_SHARD:
-                       return FALSE;
+               case ITEM_HealthSmall.m_itemid:
+               case ITEM_ArmorSmall.m_itemid:
+                       return false;
        }
 
-       return TRUE;
+       return true;
 }
 
 MUTATOR_HOOKFUNCTION(melee_BuildMutatorsString)
 {
        ret_string = strcat(ret_string, ":MeleeOnly");
-       return FALSE;
+       return false;
 }
 
 MUTATOR_HOOKFUNCTION(melee_BuildMutatorsPrettyString)
 {
        ret_string = strcat(ret_string, ", Melee Only Arena");
-       return FALSE;
+       return false;
 }
 
 MUTATOR_DEFINITION(mutator_melee_only)
 {
        MUTATOR_HOOK(SetStartItems, melee_SetStartItems, CBC_ORDER_ANY);
+       MUTATOR_HOOK(ForbidThrowCurrentWeapon, melee_ForbidThrowing, CBC_ORDER_ANY);
        MUTATOR_HOOK(FilterItem, melee_FilterItem, CBC_ORDER_ANY);
        MUTATOR_HOOK(BuildMutatorsString, melee_BuildMutatorsString, CBC_ORDER_ANY);
        MUTATOR_HOOK(BuildMutatorsPrettyString, melee_BuildMutatorsPrettyString, CBC_ORDER_ANY);
 
-       return FALSE;
+       return false;
 }