fix(Core/Achievements): Skill achievements (#2114)
- Correctly progress skill-learned achievements when learning new skill
This commit is contained in:
@@ -6577,8 +6577,6 @@ void Player::SetSkill(uint16 id, uint16 step, uint16 newVal, uint16 maxVal)
|
|||||||
SetUInt32Value(PLAYER_SKILL_INDEX(i), MAKE_PAIR32(id, step));
|
SetUInt32Value(PLAYER_SKILL_INDEX(i), MAKE_PAIR32(id, step));
|
||||||
SetUInt32Value(PLAYER_SKILL_VALUE_INDEX(i), MAKE_SKILL_VALUE(newVal, maxVal));
|
SetUInt32Value(PLAYER_SKILL_VALUE_INDEX(i), MAKE_SKILL_VALUE(newVal, maxVal));
|
||||||
UpdateSkillEnchantments(id, currVal, newVal);
|
UpdateSkillEnchantments(id, currVal, newVal);
|
||||||
UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_REACH_SKILL_LEVEL, id);
|
|
||||||
UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LEVEL, id);
|
|
||||||
|
|
||||||
// insert new entry or update if not deleted old entry yet
|
// insert new entry or update if not deleted old entry yet
|
||||||
if (itr != mSkillStatus.end())
|
if (itr != mSkillStatus.end())
|
||||||
@@ -6606,6 +6604,8 @@ void Player::SetSkill(uint16 id, uint16 step, uint16 newVal, uint16 maxVal)
|
|||||||
|
|
||||||
// Learn all spells for skill
|
// Learn all spells for skill
|
||||||
learnSkillRewardedSpells(id, newVal);
|
learnSkillRewardedSpells(id, newVal);
|
||||||
|
UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_REACH_SKILL_LEVEL, id);
|
||||||
|
UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_LEARN_SKILL_LEVEL, id);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user