Core/Auras: Allow SPELL_AURA_MECHANIC_IMMUNITY_MASK to apply aoe/chain targeting immunity

Port From (https://github.com/TrinityCore/TrinityCore/commit/ed0b621d1569a14174a9802027b68dbe4329da69)
This commit is contained in:
hondacrx
2024-02-21 18:00:19 -05:00
parent 5c6027d97f
commit 71e03da934
7 changed files with 53 additions and 30 deletions
+5 -4
View File
@@ -4513,8 +4513,10 @@ namespace Game.Entities
immunities.School = new BitSet(new uint[] { school });
immunities.DispelType = new BitSet(new uint[] { dispelType });
immunities.Mechanic = new BitSet(mechanics);
immunities.ImmuneAoE = result.Read<bool>(6);
immunities.ImmuneChain = result.Read<bool>(7);
if (result.Read<bool>(6))
immunities.Other |= SpellOtherImmunity.AoETarget;
if (result.Read<bool>(7))
immunities.Other |= SpellOtherImmunity.ChainTarget;
if (immunities.School.ToUInt() != school)
Log.outError(LogFilter.Sql, $"Invalid value in `SchoolMask` {school} for creature immunities {id}, truncated");
@@ -5147,7 +5149,6 @@ namespace Game.Entities
public BitSet Mechanic = new((int)Mechanics.Max);
public List<SpellEffectName> Effect = new();
public List<AuraType> Aura = new();
public bool ImmuneAoE; // NYI
public bool ImmuneChain; // NYI
public SpellOtherImmunity Other;
}
}