From baf7957e36c3d650de6c2b0618676c0b2f288786 Mon Sep 17 00:00:00 2001 From: Andrew <47818697+Nyeriah@users.noreply.github.com> Date: Fri, 14 Nov 2025 05:31:30 -0300 Subject: [PATCH] fix(Scripts/Spell): Fix Animal Blood spawning when it shouldn't (#23656) --- src/server/scripts/Spells/spell_generic.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index d03cae988..b8a69a0c4 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -2019,15 +2019,16 @@ class spell_gen_animal_blood : public AuraScript { // Remove all auras with spell id 46221, except the one currently being applied while (Aura* aur = GetUnitOwner()->GetOwnedAura(SPELL_ANIMAL_BLOOD, ObjectGuid::Empty, ObjectGuid::Empty, 0, GetAura())) - GetUnitOwner()->RemoveOwnedAura(aur); + GetUnitOwner()->RemoveOwnedAura(aur, AURA_REMOVE_BY_EXPIRE); } void OnRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) { + if (GetTargetApplication()->GetRemoveMode() == AURA_REMOVE_BY_EXPIRE) + return; + if (Unit* owner = GetUnitOwner()) - { owner->CastSpell(owner, SPELL_SPAWN_BLOOD_POOL, true); - } } void Register() override