#if defined(CSQC) #elif defined(MENUQC) #elif defined(SVQC) #include "../../dpdefs/progsdefs.qh" #include "mutators_include.qh" #include "../../common/mapinfo.qh" #endif void mutators_add() { #define CHECK_MUTATOR_ADD(mut_cvar,mut_name,dependence) \ { if(cvar(mut_cvar) && dependence) { MUTATOR_ADD(mut_name); } } CHECK_MUTATOR_ADD("g_dodging", mutator_dodging, 1); CHECK_MUTATOR_ADD("g_spawn_near_teammate", mutator_spawn_near_teammate, teamplay); CHECK_MUTATOR_ADD("g_physical_items", mutator_physical_items, 1); CHECK_MUTATOR_ADD("g_touchexplode", mutator_touchexplode, 1); CHECK_MUTATOR_ADD("g_instagib", mutator_instagib, !g_nexball); CHECK_MUTATOR_ADD("g_invincible_projectiles", mutator_invincibleprojectiles, 1); CHECK_MUTATOR_ADD("g_new_toys", mutator_new_toys, !cvar("g_instagib") && !cvar("g_overkill")); CHECK_MUTATOR_ADD("g_nix", mutator_nix, !cvar("g_instagib") && !cvar("g_overkill")); CHECK_MUTATOR_ADD("g_rocket_flying", mutator_rocketflying, 1); CHECK_MUTATOR_ADD("g_vampire", mutator_vampire, !cvar("g_instagib")); CHECK_MUTATOR_ADD("g_superspectate", mutator_superspec, 1); CHECK_MUTATOR_ADD("g_pinata", mutator_pinata, !cvar("g_instagib") && !cvar("g_overkill")); CHECK_MUTATOR_ADD("g_midair", mutator_midair, 1); CHECK_MUTATOR_ADD("g_bloodloss", mutator_bloodloss, 1); CHECK_MUTATOR_ADD("g_random_gravity", mutator_random_gravity, 1); CHECK_MUTATOR_ADD("g_multijump", mutator_multijump, 1); CHECK_MUTATOR_ADD("g_melee_only", mutator_melee_only, !cvar("g_instagib") && !g_nexball); CHECK_MUTATOR_ADD("g_nades", mutator_nades, 1); CHECK_MUTATOR_ADD("g_sandbox", sandbox, 1); CHECK_MUTATOR_ADD("g_campcheck", mutator_campcheck, 1); CHECK_MUTATOR_ADD("g_overkill", mutator_overkill, !cvar("g_instagib") && !g_nexball && cvar_string("g_mod_balance") == "Overkill"); CHECK_MUTATOR_ADD("g_buffs", mutator_buffs, 1); #undef CHECK_MUTATOR_ADD }