fix(Core/Spells): Don't remove shield-dependant auras in Dismantle (#25658)

This commit is contained in:
kb31 2026-04-30 13:16:53 +01:00 committed by GitHub
parent 6956fd2db8
commit 0b32c50fb2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -12551,8 +12551,7 @@ bool Player::HasItemFitToSpellRequirements(SpellInfo const* spellInfo, Item cons
return true;
// Keep active non-passive auras (e.g. Shield Wall) when disarmed
Item* offhand = GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND);
if (!spellInfo->IsPassive() && offhand && offhand != ignoreItem)
if (!spellInfo->IsPassive() && HasAuraType(SPELL_AURA_MOD_DISARM_OFFHAND) && GetItemByPos(INVENTORY_SLOT_BAG_0, EQUIPMENT_SLOT_OFFHAND))
{
for (uint8 i = 0; i < MAX_SPELL_EFFECTS; ++i)
if (spellInfo->Effects[i].IsAura())