feat: show effective skill value with bonus indicator in skills panel

Read the third update field (bonusTemp/bonusPerm) for each skill slot so the
skills tab displays the actual buffed value rather than just the base value.
Skills buffed by food/potions/items now show "value / max (+N)" with a cyan
name, and maxed-out skills show a gold bar and name for quick identification.
This commit is contained in:
Kelsi 2026-03-13 10:58:05 -07:00
parent c48065473f
commit a6c4f6d2e9
3 changed files with 35 additions and 5 deletions

View file

@ -21382,10 +21382,20 @@ void GameHandler::extractSkillFields(const std::map<uint16_t, uint32_t>& fields)
uint16_t value = raw1 & 0xFFFF;
uint16_t maxValue = (raw1 >> 16) & 0xFFFF;
uint16_t bonusTemp = 0;
uint16_t bonusPerm = 0;
auto bonusIt = fields.find(static_cast<uint16_t>(baseField + 2));
if (bonusIt != fields.end()) {
bonusTemp = bonusIt->second & 0xFFFF;
bonusPerm = (bonusIt->second >> 16) & 0xFFFF;
}
PlayerSkill skill;
skill.skillId = skillId;
skill.value = value;
skill.maxValue = maxValue;
skill.bonusTemp = bonusTemp;
skill.bonusPerm = bonusPerm;
newSkills[skillId] = skill;
}