diff --git a/src/server/game/Spells/SpellInfoCorrections.cpp b/src/server/game/Spells/SpellInfoCorrections.cpp index b222c1425..31e495f09 100644 --- a/src/server/game/Spells/SpellInfoCorrections.cpp +++ b/src/server/game/Spells/SpellInfoCorrections.cpp @@ -212,13 +212,19 @@ void SpellMgr::LoadSpellInfoCorrections() ApplySpellFix({ 37790, // Spread Shot 54172, // Divine Storm (heal) - 66588, // Flaming Spear - 54171 // Divine Storm + 66588 // Flaming Spear }, [](SpellInfo* spellInfo) { spellInfo->MaxAffectedTargets = 3; }); + // Divine Storm + ApplySpellFix({ 54171 }, [](SpellInfo* spellInfo) + { + spellInfo->MaxAffectedTargets = 3; + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + // Divine Storm (Damage) ApplySpellFix({ 53385 }, [](SpellInfo* spellInfo) { @@ -566,12 +572,6 @@ void SpellMgr::LoadSpellInfoCorrections() spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC; }); - // Light's Beacon, Beacon of Light - ApplySpellFix({ 53651 }, [](SpellInfo* spellInfo) - { - spellInfo->AttributesEx3 |= SPELL_ATTR3_DOT_STACKING_RULE; - }); - // Hand of Reckoning ApplySpellFix({ 62124 }, [](SpellInfo* spellInfo) { @@ -854,6 +854,7 @@ void SpellMgr::LoadSpellInfoCorrections() ApplySpellFix({ 57330, 57623 }, [](SpellInfo* spellInfo) { spellInfo->Effects[EFFECT_1].TargetA = 0; + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; }); // Scourge Strike trigger @@ -1213,6 +1214,7 @@ void SpellMgr::LoadSpellInfoCorrections() ApplySpellFix({ 59725 }, [](SpellInfo* spellInfo) { spellInfo->Effects[EFFECT_0].TargetA = SpellImplicitTargetInfo(TARGET_UNIT_CASTER_AREA_PARTY); + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; }); // Hymn of Hope @@ -4033,6 +4035,8 @@ void SpellMgr::LoadSpellInfoCorrections() ApplySpellFix({ 53651 }, [](SpellInfo* spellInfo) { spellInfo->AttributesEx |= SPELL_ATTR1_NO_THREAT; + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + spellInfo->AttributesEx3 |= SPELL_ATTR3_DOT_STACKING_RULE; }); // Shadow Hunter Vosh'gajin - Hex @@ -4650,6 +4654,150 @@ void SpellMgr::LoadSpellInfoCorrections() spellInfo->ProcChance = 100; }); + // Commanding Shout + ApplySpellFix({ 469, 47439, 47440 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Battle Shout + ApplySpellFix({ 2048, 5242, 6192, 6673, 11549, 11550, 11551, 25289, 47436 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Plague Effect + ApplySpellFix({ 19594, 26557 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Prayer of Fortitude + ApplySpellFix({ 21562, 21564, 25392, 48162 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Gift of the Wild + ApplySpellFix({ 21849, 21850, 26991, 48470, 69381 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Arcane Brilliance + ApplySpellFix({ 23028, 27127, 43002 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Prayer of Spirit + ApplySpellFix({ 27681, 32999, 48074 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Prayer of Shadow Protection + ApplySpellFix({ 27683, 39374, 48170 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Nagrand Fort Buff Reward Raid + ApplySpellFix({ 33006 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Demonic Pact + ApplySpellFix({ 48090 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Ancestral Awakening + ApplySpellFix({ 52759 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Turn the Tables + ApplySpellFix({ 52910, 52914, 52915 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Judgements of the Wise + ApplySpellFix({ 54180 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Replenishment + ApplySpellFix({ 57669 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Dalaran Brilliance + ApplySpellFix({ 61316 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // [DND] Dalaran Brilliance + ApplySpellFix({ 61332 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Infinite Replenishment + Wisdom + ApplySpellFix({ 61782 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Renewed Hope + ApplySpellFix({ 63944 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Fortitude + ApplySpellFix({ 69377 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Blessing of Forgotten Kings + ApplySpellFix({ 69378 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Lucky Charm + ApplySpellFix({ 69511 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Shiny Shard of the Scale Heal Targeter + ApplySpellFix({ 69749 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Purified Shard of the Scale Heal Targeter + ApplySpellFix({ 69754 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + + // Brilliance + ApplySpellFix({ 69994 }, [](SpellInfo* spellInfo) + { + spellInfo->AttributesEx2 |= SPELL_ATTR2_IGNORE_LINE_OF_SIGHT; + }); + for (uint32 i = 0; i < GetSpellInfoStoreSize(); ++i) { SpellInfo* spellInfo = mSpellInfoMap[i];