From e6785094fce1bc0d8537cddef73088d30521883a Mon Sep 17 00:00:00 2001 From: Shauren Date: Thu, 1 Feb 2024 22:20:25 +0100 Subject: Core/Spells: Moved hardcoded immunity data for SPELL_AURA_MECHANIC_IMMUNITY_MASK to database --- src/server/game/Miscellaneous/SharedDefines.h | 14 +-- src/server/game/Spells/SpellInfo.cpp | 141 -------------------------- 2 files changed, 7 insertions(+), 148 deletions(-) (limited to 'src') diff --git a/src/server/game/Miscellaneous/SharedDefines.h b/src/server/game/Miscellaneous/SharedDefines.h index c42f5d8714c..7b34e1a08a1 100644 --- a/src/server/game/Miscellaneous/SharedDefines.h +++ b/src/server/game/Miscellaneous/SharedDefines.h @@ -2576,13 +2576,13 @@ enum Mechanics : uint32 }; // Used for spell 42292 Immune Movement Impairment and Loss of Control (0x49967ca6) -#define IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK (\ - (1<Aura) immuneInfo.AuraTypeImmune.insert(aura); } - - switch (miscVal) - { - case 96: // Free Friend, Uncontrollable Frenzy, Warlord's Presence - { - mechanicImmunityMask |= IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK; - - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_DECREASE_SPEED); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_CONFUSE); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_FEAR); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT_2); - break; - } - case 1615: // Incite Rage, Wolf Spirit, Overload, Lightning Tendrils - { - switch (Id) - { - case 43292: // Incite Rage - case 49172: // Wolf Spirit - mechanicImmunityMask |= IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK; - - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_DECREASE_SPEED); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_CONFUSE); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_FEAR); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT_2); - [[fallthrough]]; - case 61869: // Overload - case 63481: - case 61887: // Lightning Tendrils - case 63486: - mechanicImmunityMask |= (1 << MECHANIC_INTERRUPT) | (1 << MECHANIC_SILENCE); - - immuneInfo.SpellEffectImmune.insert(SPELL_EFFECT_KNOCK_BACK); - immuneInfo.SpellEffectImmune.insert(SPELL_EFFECT_KNOCK_BACK_DEST); - break; - default: - break; - } - break; - } - case 679: // Mind Control, Avenging Fury - { - if (Id == 57742) // Avenging Fury - { - mechanicImmunityMask |= IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK; - - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_DECREASE_SPEED); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_CONFUSE); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_FEAR); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT_2); - } - break; - } - case 1557: // Startling Roar, Warlord Roar, Break Bonds, Stormshield - { - if (Id == 64187) // Stormshield - { - mechanicImmunityMask |= (1 << MECHANIC_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - } - else - { - mechanicImmunityMask |= IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK; - - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_DECREASE_SPEED); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_CONFUSE); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_FEAR); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT_2); - } - break; - } - case 1614: // Fixate - case 1694: // Fixated, Lightning Tendrils - { - immuneInfo.SpellEffectImmune.insert(SPELL_EFFECT_ATTACK_ME); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_TAUNT); - break; - } - case 1630: // Fervor, Berserk - { - if (Id == 64112) // Berserk - { - immuneInfo.SpellEffectImmune.insert(SPELL_EFFECT_ATTACK_ME); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_TAUNT); - } - else - { - mechanicImmunityMask |= IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK; - - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_DECREASE_SPEED); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_CONFUSE); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_FEAR); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT_2); - } - break; - } - case 477: // Bladestorm - case 1733: // Bladestorm, Killing Spree - { - if (!amount) - { - mechanicImmunityMask |= IMMUNE_TO_MOVEMENT_IMPAIRMENT_AND_LOSS_CONTROL_MASK; - - immuneInfo.SpellEffectImmune.insert(SPELL_EFFECT_KNOCK_BACK); - immuneInfo.SpellEffectImmune.insert(SPELL_EFFECT_KNOCK_BACK_DEST); - - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_DECREASE_SPEED); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_CONFUSE); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_FEAR); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_ROOT_2); - } - break; - } - case 878: // Whirlwind, Fog of Corruption, Determination - { - if (Id == 66092) // Determination - { - mechanicImmunityMask |= (1 << MECHANIC_SNARE) | (1 << MECHANIC_STUN) - | (1 << MECHANIC_DISORIENTED) | (1 << MECHANIC_FREEZE); - - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_STUN); - immuneInfo.AuraTypeImmune.insert(SPELL_AURA_MOD_DECREASE_SPEED); - } - break; - } - default: - break; - } break; } case SPELL_AURA_MECHANIC_IMMUNITY: -- cgit v1.2.3