From e4111c7d221fd00a967d65c14778268200fec9f5 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Tue, 18 Jul 2023 07:49:11 -0400 Subject: [PATCH] Core/Players: Fixed fury warriors failing to be saved to db on first save after login/respec Port From (https://github.com/TrinityCore/TrinityCore/commit/4b29ecd749046d204fd1522b364c2ac3a9be8b64) --- Source/Game/Entities/Player/Player.Spells.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Source/Game/Entities/Player/Player.Spells.cs b/Source/Game/Entities/Player/Player.Spells.cs index 95893d27c..cccfe3b52 100644 --- a/Source/Game/Entities/Player/Player.Spells.cs +++ b/Source/Game/Entities/Player/Player.Spells.cs @@ -1118,7 +1118,7 @@ namespace Game.Entities { if (currVal == 0) // activated skill, mark as new to save into database { - skillStatusData.State = SkillState.New; + skillStatusData.State = skillStatusData.State != SkillState.Deleted ? SkillState.New : SkillState.Changed; // skills marked as SKILL_DELETED already exist in database, mark as changed instead of new // Set profession line int freeProfessionSlot = FindEmptyProfessionSlotFor(id); @@ -1175,8 +1175,7 @@ namespace Game.Entities SetSkillPermBonus(skillStatusData.Pos, 0); // mark as deleted so the next save will delete the data from the database - skillStatusData.State = SkillState.Deleted; - + skillStatusData.State = skillStatusData.State != SkillState.New ? SkillState.Deleted : SkillState.Unchanged; // skills marked as SKILL_NEW don't exist in database (this distinction is not neccessary for deletion but for re-learning the same skill before save to db happens) // remove all spells that related to this skill List skillLineAbilities = Global.DB2Mgr.GetSkillLineAbilitiesBySkill(id);