aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2018-02-13 15:47:44 +0100
committerShauren <shauren.trinity@gmail.com>2021-06-20 20:22:18 +0200
commitffce2c1f9a416eddad2e45ab2e03df964d5e39cd (patch)
treed4679b660ba7a3516e0ce95de09d7af6ade37673
parent3b635a8a12e39fe29a67a07c730eccbf335c6a4b (diff)
Core/Spell: Properly remove REACT_PASSIVE on permanent feign death unapply. Fixes and closes #21156.
(cherry picked from commit ac8b9be5d67ccaba3f51663eeccca60ae86cea5b)
-rw-r--r--src/server/scripts/Spells/spell_generic.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp
index 076aa4bb39a..736ea803973 100644
--- a/src/server/scripts/Spells/spell_generic.cpp
+++ b/src/server/scripts/Spells/spell_generic.cpp
@@ -1043,8 +1043,8 @@ class spell_gen_creature_permanent_feign_death : public AuraScript
target->AddDynamicFlag(UNIT_DYNFLAG_DEAD);
target->AddUnitFlag2(UNIT_FLAG2_FEIGN_DEATH);
- if (target->GetTypeId() == TYPEID_UNIT)
- target->ToCreature()->SetReactState(REACT_PASSIVE);
+ if (Creature* creature = target->ToCreature())
+ creature->SetReactState(REACT_PASSIVE);
}
void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)
@@ -1052,6 +1052,9 @@ class spell_gen_creature_permanent_feign_death : public AuraScript
Unit* target = GetTarget();
target->RemoveDynamicFlag(UNIT_DYNFLAG_DEAD);
target->RemoveUnitFlag2(UNIT_FLAG2_FEIGN_DEATH);
+
+ if (Creature* creature = target->ToCreature())
+ creature->InitializeReactState();
}
void Register() override