The "Complete" tag is not removed from repeatable quests after turning them in.
Cabro opened this issue ยท 14 comments
[13:14:01] Dump: value=QuestLogCache.questLog_DO_NOT_MODIFY[8507]
[13:14:01] empty result
[13:21:25] Dump: value=QuestieDB:GetQuest(8507).isComplete
[13:21:25] [1]=true
Which is curious, since i don't have that quest in log anymore.
I also ran additionally the /run print(C_QuestLog.IsQuestFlaggedCompleted(8507))
and it returned false
, so this is a Questie issue.
Also, while the NPC tooltip shows the "complete" tag, the map doesnt:
Maybe Questie simply doesn't clear the quests' status after turning in the repeatable quest?
Then this is a bug in the QuestLogCache
not recognizing the quest was removed from the quest log.
If you didn't do a /reload
yet, can you do:
/dump QuestLogCache.questLog_DO_NOT_MODIFY[8507]
Can you also report the output of: /dump QuestieDB:GetQuest(questId):IsComplete()
?
Alright. Looks like quest.isComplete
flag is not reset correctly and/or we get a cached value.
Can you add the following lines to the following place and try again?
Questie/Modules/Quest/QuestieQuest.lua
Line 486 in b83f73b
function QuestieQuest:CompleteQuest(questId)
+ QuestiePlayer.currentQuestlog[questId].WasComplete = nil
+ QuestiePlayer.currentQuestlog[questId].isComplete = nil
QuestiePlayer.currentQuestlog[questId] = nil;
-- Only quests that are daily quests or aren't repeatable should be marked complete,
-- otherwise objectives for repeatable quests won't track correctly - #1433
Questie.db.char.complete[questId] = QuestieDB.IsDailyQuest(questId) or (not QuestieDB.IsRepeatable(questId));
QuestieMap:UnloadQuestFrames(questId)
if (QuestieMap.questIdFrames[questId]) then
Questie:Error("Just removed all frames but the framelist seems to still be there!", questId)
end
QuestieTooltips:RemoveQuest(questId)
QuestieTracker:RemoveQuest(questId)
QuestieCombatQueue:Queue(function()
QuestieTracker:Update()
end)
--This should probably be done first, because DrawAllAvailableQuests looks at QuestieMap.questIdFrames[QuestId] to add available
QuestieQuest.CalculateAndDrawAvailableQuestsIterative()
Questie:Debug(Questie.DEBUG_INFO, "[QuestieQuest] Completed Quest:", questId)
end