mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-24 16:10:14 +00:00
fix: correct game-object quest objective handling and item count fallback
- SMSG_QUESTUPDATE_ADD_KILL: use absolute value of npcOrGoId when looking up required count from killObjectives (negative values = game objects) - applyPackedKillCountsFromFields: same fix — use abs(npcOrGoId) as map key so GO objective counts are stored with the correct entry key - SMSG_QUESTUPDATE_ADD_ITEM: also match quests via itemObjectives when requiredItemCounts is not yet populated (race at quest accept time) - Quest log and minimap sidebar: fall back to GO name cache for entries that return empty from getCachedCreatureName (interact/loot objectives)
This commit is contained in:
parent
e64b566d72
commit
12aa5e01b6
3 changed files with 44 additions and 6 deletions
|
|
@ -5048,10 +5048,15 @@ void GameScreen::renderQuestObjectiveTracker(game::GameHandler& gameHandler) {
|
|||
} else {
|
||||
// Kill counts
|
||||
for (const auto& [entry, progress] : q.killCounts) {
|
||||
std::string creatureName = gameHandler.getCachedCreatureName(entry);
|
||||
if (!creatureName.empty()) {
|
||||
std::string name = gameHandler.getCachedCreatureName(entry);
|
||||
if (name.empty()) {
|
||||
// May be a game object objective; fall back to GO name cache.
|
||||
const auto* goInfo = gameHandler.getCachedGameObjectInfo(entry);
|
||||
if (goInfo && !goInfo->name.empty()) name = goInfo->name;
|
||||
}
|
||||
if (!name.empty()) {
|
||||
ImGui::TextColored(ImVec4(0.75f, 0.75f, 0.75f, 1.0f),
|
||||
" %s: %u/%u", creatureName.c_str(),
|
||||
" %s: %u/%u", name.c_str(),
|
||||
progress.first, progress.second);
|
||||
} else {
|
||||
ImGui::TextColored(ImVec4(0.75f, 0.75f, 0.75f, 1.0f),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue