From 32e149e3428ba41cae54adcab65dcf3b57cdd324 Mon Sep 17 00:00:00 2001 From: lineagedr Date: Fri, 20 Aug 2021 20:40:16 +0300 Subject: [PATCH] [Core/Spells]: Fixed stormstrike and lava lash consuing flurry. (#7397) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [Core/Spells]: Fixed stormstrike and lava lash consuing flurry. * Update Co-authored-by: Stefano Borzì --- src/server/scripts/Spells/spell_shaman.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/server/scripts/Spells/spell_shaman.cpp b/src/server/scripts/Spells/spell_shaman.cpp index 846e4240c..62a76f62e 100644 --- a/src/server/scripts/Spells/spell_shaman.cpp +++ b/src/server/scripts/Spells/spell_shaman.cpp @@ -48,7 +48,9 @@ enum ShamanSpells SPELL_SHAMAN_TOTEM_EARTHBIND_TOTEM = 6474, SPELL_SHAMAN_TOTEM_EARTHEN_POWER = 59566, SPELL_SHAMAN_TOTEM_HEALING_STREAM_HEAL = 52042, - SPELL_SHAMAN_BLESSING_OF_THE_ETERNALS_R1 = 51554 + SPELL_SHAMAN_BLESSING_OF_THE_ETERNALS_R1 = 51554, + SPELL_SHAMAN_STORMSTRIKE = 17364, + SPELL_SHAMAN_LAVA_LASH = 60103 }; enum ShamanSpellIcons @@ -1366,10 +1368,13 @@ public: bool CheckProc(ProcEventInfo& eventInfo) { - // Should not proc from Windfury Attack + // Should not proc from Windfury Attack, Stormstrike and Lava Lash if (SpellInfo const* spellInfo = eventInfo.GetSpellInfo()) { - if (spellInfo->SpellFamilyName == SPELLFAMILY_SHAMAN && (spellInfo->SpellFamilyFlags[0] & 0x00800000) != 0) + constexpr std::array spellIcons = {SPELL_SHAMAN_STORMSTRIKE, SPELL_SHAMAN_LAVA_LASH}; + const auto found = std::find(std::begin(spellIcons), std::end(spellIcons), spellInfo->Id); + + if ((spellInfo->SpellFamilyName == SPELLFAMILY_SHAMAN && (spellInfo->SpellFamilyFlags[0] & 0x00800000) != 0) || found != std::end(spellIcons)) { return false; }