From 074127fc341a5580b806505ea3ec62258f668da9 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Sat, 1 Jul 2023 09:27:05 -0400 Subject: [PATCH] Core/Players: Fixed spell overrides not being removed when unlearning talents Port From (https://github.com/TrinityCore/TrinityCore/commit/ad0cb188c91501887f4117157dcb450429652b7c) --- Source/Game/Entities/Player/Player.Spells.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Source/Game/Entities/Player/Player.Spells.cs b/Source/Game/Entities/Player/Player.Spells.cs index 2172bc900..95893d27c 100644 --- a/Source/Game/Entities/Player/Player.Spells.cs +++ b/Source/Game/Entities/Player/Player.Spells.cs @@ -2199,6 +2199,7 @@ namespace Game.Entities bool cur_active = pSpell.Active; bool cur_dependent = pSpell.Dependent; + int? traitDefinitionId = pSpell.TraitDefinitionId; if (disabled) { @@ -2315,6 +2316,13 @@ namespace Game.Entities } } + if (traitDefinitionId.HasValue) + { + var traitDefinition = CliDB.TraitDefinitionStorage.LookupByKey(traitDefinitionId.Value); + if (traitDefinition != null) + RemoveOverrideSpell(traitDefinition.OverridesSpellID, spellId); + } + m_overrideSpells.Remove(spellId); if (m_canTitanGrip)