fix(SpellInfoCorrections) Raid buffs should ignore LoS (#18518)

This commit is contained in:
Walter Pagani
2024-03-15 01:20:36 -03:00
committed by GitHub
parent a21ba7afc2
commit 7a7ea27293

View File

@@ -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];