feat: achievement name in toast, parse earned achievements, loot item tooltips

- Parse SMSG_ALL_ACHIEVEMENT_DATA on login to populate earnedAchievements_ set
- Pass achievement name through callback so toast shows name instead of ID
- Add renderItemTooltip(ItemQueryResponseData) overload for loot/non-inventory contexts
- Loot window now shows full item tooltip on hover (stats, sell price, bind type, etc.)
This commit is contained in:
Kelsi 2026-03-10 20:53:21 -07:00
parent 984decd664
commit 6275a45ec0
7 changed files with 225 additions and 10 deletions

View file

@ -2335,9 +2335,9 @@ void Application::setupUICallbacks() {
});
// Achievement earned callback — show toast banner
gameHandler->setAchievementEarnedCallback([this](uint32_t achievementId) {
gameHandler->setAchievementEarnedCallback([this](uint32_t achievementId, const std::string& name) {
if (uiManager) {
uiManager->getGameScreen().triggerAchievementToast(achievementId);
uiManager->getGameScreen().triggerAchievementToast(achievementId, name);
}
});