X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fmutators%2Fmutator%2Foverkill%2Fsv_overkill.qh;h=79e5dd3c5b0cbce85cee0d53108046f8a14bf3fa;hb=7e5268799e95d0dd6f2b77ed4e097b0adc755f2b;hp=6f70f09beec2219624baeca92e2cd7deaa104fb4;hpb=b0210c08a287ad4631e16ddf3a83a0b0c546283f;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/mutators/mutator/overkill/sv_overkill.qh b/qcsrc/common/mutators/mutator/overkill/sv_overkill.qh index 6f70f09be..79e5dd3c5 100644 --- a/qcsrc/common/mutators/mutator/overkill/sv_overkill.qh +++ b/qcsrc/common/mutators/mutator/overkill/sv_overkill.qh @@ -1 +1,42 @@ #pragma once + +string autocvar_g_overkill; +bool autocvar_g_overkill_filter_healthmega; +bool autocvar_g_overkill_filter_armormedium; +bool autocvar_g_overkill_filter_armorbig; +bool autocvar_g_overkill_filter_armormega; + +.float ok_item; + +REGISTER_MUTATOR(ok, expr_evaluate(autocvar_g_overkill) && !MUTATOR_IS_ENABLED(mutator_instagib) && !g_nexball && cvar_string("g_mod_balance") == "Overkill") +{ + MUTATOR_ONADD + { + precache_all_playermodels("models/ok_player/*.dpm"); + + if (autocvar_g_overkill_filter_healthmega) + { + ITEM_HealthMega.spawnflags |= ITEM_FLAG_MUTATORBLOCKED; + } + if (autocvar_g_overkill_filter_armormedium) + { + ITEM_ArmorMedium.spawnflags |= ITEM_FLAG_MUTATORBLOCKED; + } + if (autocvar_g_overkill_filter_armorbig) + { + ITEM_ArmorBig.spawnflags |= ITEM_FLAG_MUTATORBLOCKED; + } + if (autocvar_g_overkill_filter_armormega) + { + ITEM_ArmorMega.spawnflags |= ITEM_FLAG_MUTATORBLOCKED; + } + } + + MUTATOR_ONREMOVE + { + ITEM_HealthMega.spawnflags &= ~ITEM_FLAG_MUTATORBLOCKED; + ITEM_ArmorMedium.spawnflags &= ~ITEM_FLAG_MUTATORBLOCKED; + ITEM_ArmorBig.spawnflags &= ~ITEM_FLAG_MUTATORBLOCKED; + ITEM_ArmorMega.spawnflags &= ~ITEM_FLAG_MUTATORBLOCKED; + } +}