Core/Auras: Implemented SPELL_ATTR7_DISABLE_AURA_WHILE_DEAD (suppress aura applications while dead without removing the aura)
This commit is contained in:
1 parent
77c017555b
commit
e90a2e6ef3
2 files changed
+4
-1
No files matched your search
@@ -614,7 +614,7 @@ enum SpellAttr7
|
||||
{
|
||||
SPELL_ATTR7_UNK0 = 0x00000001, // 0 Shaman's new spells (Call of the ...), Feign Death.
|
||||
SPELL_ATTR7_IGNORE_DURATION_MODS = 0x00000002, // 1 Duration is not affected by duration modifiers
|
||||
SPELL_ATTR7_REACTIVATE_AT_RESURRECT = 0x00000004, // 2 Paladin's auras and 65607 only.
|
||||
SPELL_ATTR7_DISABLE_AURA_WHILE_DEAD = 0x00000004, // TITLE Disable Aura While Dead
|
||||
SPELL_ATTR7_IS_CHEAT_SPELL = 0x00000008, // 3 Cannot cast if caster doesn't have UnitFlag2 & UNIT_FLAG2_ALLOW_CHEAT_SPELLS
|
||||
SPELL_ATTR7_UNK4 = 0x00000010, // 4 Only 47883 (Soulstone Resurrection) and test spell.
|
||||
SPELL_ATTR7_SUMMON_TOTEM = 0x00000020, // 5 Only Shaman totems.
|
||||
|
||||
@@ -2426,6 +2426,9 @@ void UnitAura::Remove(AuraRemoveFlags removeMode)
|
||||
|
||||
void UnitAura::FillTargetMap(std::unordered_map<Unit*, uint8>& targets, Unit* caster)
|
||||
{
|
||||
if (GetSpellInfo()->HasAttribute(SPELL_ATTR7_DISABLE_AURA_WHILE_DEAD) && !GetUnitOwner()->IsAlive())
|
||||
return;
|
||||
|
||||
Unit* ref = caster;
|
||||
if (!ref)
|
||||
ref = GetUnitOwner();
|
||||
|
||||
Reference in new issue
Block a user