diff --git a/src/server/scripts/Spells/spell_item.cpp b/src/server/scripts/Spells/spell_item.cpp index cbb9e10bc4..d2a546c698 100644 --- a/src/server/scripts/Spells/spell_item.cpp +++ b/src/server/scripts/Spells/spell_item.cpp @@ -5104,26 +5104,15 @@ class spell_item_blaze_of_life : public SpellScript } }; -enum ItemObsidianArmor +static std::array const ResistanceSpellsBySchool = { - SPELL_FIRE_RESISTANCE = 27533, - SPELL_ARCANCE_RESISTANCE = 27540, - SPELL_NATURE_RESISTANCE = 27538, - SPELL_HOLY_RESISTANCE = 27536, - SPELL_SHADOW_RESISTANCE = 27535, - SPELL_FROST_RESISTANCE = 27534, - -}; - -static std::array const ResistanceSpellsBySchool = -{ - 0, // SPELL_SCHOOL_NORMAL - no shield - SPELL_HOLY_RESISTANCE, // SPELL_SCHOOL_HOLY - SPELL_FIRE_RESISTANCE, // SPELL_SCHOOL_FIRE - SPELL_NATURE_RESISTANCE, // SPELL_SCHOOL_NATURE - SPELL_FROST_RESISTANCE, // SPELL_SCHOOL_FROST - SPELL_SHADOW_RESISTANCE, // SPELL_SCHOOL_SHADOW - SPELL_ARCANCE_RESISTANCE // SPELL_SCHOOL_ARCANE + // SPELL_SCHOOL_NORMAL has no shield + 27536, // SPELL_SCHOOL_HOLY + 27533, // SPELL_SCHOOL_FIRE + 27538, // SPELL_SCHOOL_NATURE + 27534, // SPELL_SCHOOL_FROST + 27535, // SPELL_SCHOOL_SHADOW + 27540 // SPELL_SCHOOL_ARCANE }; // 27539 - Obsidian Armor @@ -5131,15 +5120,7 @@ class spell_item_obsidian_armor : public AuraScript { bool Validate(SpellInfo const* /*spell*/) override { - return ValidateSpellInfo( - { - SPELL_HOLY_RESISTANCE, - SPELL_FIRE_RESISTANCE, - SPELL_NATURE_RESISTANCE, - SPELL_FROST_RESISTANCE, - SPELL_SHADOW_RESISTANCE, - SPELL_ARCANCE_RESISTANCE - }); + return ValidateSpellInfo(ResistanceSpellsBySchool); } void HandleProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) @@ -5150,7 +5131,7 @@ class spell_item_obsidian_armor : public AuraScript for (uint8 i = SPELL_SCHOOL_HOLY; i < MAX_SPELL_SCHOOL; ++i) { if ((eventInfo.GetSpellInfo()->GetSchoolMask() & (1 << i)) != 0) - GetTarget()->CastSpell(GetTarget(), ResistanceSpellsBySchool[i], aurEff); + GetTarget()->CastSpell(GetTarget(), ResistanceSpellsBySchool[i - 1], aurEff); } }