From ac8b9be5d67ccaba3f51663eeccca60ae86cea5b Mon Sep 17 00:00:00 2001 From: Treeston Date: Tue, 13 Feb 2018 15:47:44 +0100 Subject: Core/Spell: Properly remove REACT_PASSIVE on permanent feign death unapply. Fixes and closes #21156. --- src/server/scripts/Spells/spell_generic.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/server/scripts/Spells') diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index c8c76295188..746b1f69ae1 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -1095,8 +1095,8 @@ class spell_gen_creature_permanent_feign_death : public AuraScript target->SetFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_DEAD); target->SetFlag(UNIT_FIELD_FLAGS_2, 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*/) @@ -1104,6 +1104,9 @@ class spell_gen_creature_permanent_feign_death : public AuraScript Unit* target = GetTarget(); target->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_DEAD); target->RemoveFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_FEIGN_DEATH); + + if (Creature* creature = target->ToCreature()) + creature->InitializeReactState(); } void Register() override -- cgit v1.2.3