From db4bf267a8405befc9919bfb9ed004901e314092 Mon Sep 17 00:00:00 2001 From: blinkysc <37940565+blinkysc@users.noreply.github.com> Date: Fri, 8 May 2026 07:33:16 -0500 Subject: [PATCH] fix(Core/Player): Recheck shapeshift bonus auras on spec swap (#25764) Co-authored-by: blinkysc Co-authored-by: ariel- --- src/server/game/Entities/Player/Player.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index ef8a8f0f91..3e65e30cbf 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -15417,6 +15417,15 @@ void Player::ActivateSpec(uint8 spec) ++iter; } + // Recheck shapeshift bonus auras: drop and re-apply form-tied passives + // so buffs from talents missing in the new spec (e.g. Master Shapeshifter) go away + Unit::AuraEffectList const& shapeshiftAuras = GetAuraEffectsByType(SPELL_AURA_MOD_SHAPESHIFT); + for (AuraEffect* aurEff : shapeshiftAuras) + { + aurEff->HandleShapeshiftBoosts(this, false); + aurEff->HandleShapeshiftBoosts(this, true); + } + sScriptMgr->OnPlayerAfterSpecSlotChanged(this, GetActiveSpec()); }