diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index b4c06db9d1..3a0129a8f2 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -5520,7 +5520,7 @@ void Player::SetSkill(uint16 id, uint16 step, uint16 newVal, uint16 maxVal) UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LEVEL, id); // update skill state - if (itr->second.uState == SKILL_UNCHANGED) + if (itr->second.uState == SKILL_UNCHANGED || itr->second.uState == SKILL_DELETED) { if (currVal == 0) // activated skill, mark as new to save into database { @@ -5551,7 +5551,7 @@ void Player::SetSkill(uint16 id, uint16 step, uint16 newVal, uint16 maxVal) _archaeology->Update(); } } - else if (currVal) // Deactivate skill line + else if (currVal && !newVal) // Deactivate skill line { //remove enchantments needing this skill UpdateSkillEnchantments(id, currVal, 0);