# HG changeset patch # User James D. Callahan III # Date 1335892577 18000 # Node ID be3d67c28a274faffbb0241ce7cafe8aca52c4f2 # Parent 0ec5c8f4b72be8be86237173ca5b671b2addb0e9 Refactoring, and record quest ending unit. diff -r 0ec5c8f4b72b -r be3d67c28a27 Main.lua --- a/Main.lua Tue May 01 12:04:29 2012 -0500 +++ b/Main.lua Tue May 01 12:16:17 2012 -0500 @@ -473,25 +473,33 @@ end -function WDP:QUEST_COMPLETE() -end +do + local function UpdateQuestJuncture(point) + local unit_name = _G.UnitName("questnpc") + if not unit_name then + return + end + local unit_type, unit_id = WDP:ParseGUID(_G.UnitGUID("questnpc")) -function WDP:QUEST_DETAIL() - local unit_name = _G.UnitName("questnpc") + if unit_type == private.UNIT_TYPES.OBJECT then + UpdateObjectLocation(unit_id) + end + local quest = UnitEntry("quests", _G.GetQuestID()) + quest[point] = quest[point] or {} + quest[point][("%s:%d"):format(private.UNIT_TYPE_NAMES[unit_type + 1], unit_id)] = true + end - if not unit_name then - return + + function WDP:QUEST_COMPLETE() + UpdateQuestJuncture("end") end - local unit_type, unit_id = self:ParseGUID(_G.UnitGUID("questnpc")) - if unit_type == private.UNIT_TYPES.OBJECT then - UpdateObjectLocation(unit_id) + + function WDP:QUEST_DETAIL() + UpdateQuestJuncture("begin") end - local quest = UnitEntry("quests", _G.GetQuestID()) - quest.begin = quest.begin or {} - quest.begin[("%s:%d"):format(private.UNIT_TYPE_NAMES[unit_type + 1], unit_id)] = true -end +end -- do-block function WDP:QUEST_LOG_UPDATE()