Nenue@28
|
1 --- ${PACKAGE_NAME}
|
Nenue@28
|
2 -- @file-author@
|
Nenue@28
|
3 -- @project-revision@ @project-hash@
|
Nenue@28
|
4 -- @file-revision@ @file-hash@
|
Nenue@28
|
5 -- Created: 3/30/2016 1:23 AM
|
Nenue@28
|
6 local B = select(2,...).frame
|
Nenue@28
|
7 local T = B:RegisterModule("ObjectiveTracker", _G.VeneerObjectiveWrapper, 'BuffFrame')
|
Nenue@28
|
8 local print = B.print('Objectives')
|
Nenue@34
|
9 local OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST = OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST
|
Nenue@34
|
10 local OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP = OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP
|
Nenue@44
|
11 local GetQuestID = GetQuestID
|
Nenue@34
|
12 local QuestPOIUpdateIcons = QuestPOIUpdateIcons
|
Nenue@44
|
13
|
Nenue@44
|
14 --- Module updates triggered by user events
|
Nenue@45
|
15 T.AcknowledgeAutoAcceptQuest = function(...)
|
Nenue@45
|
16 return OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST + OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP
|
Nenue@45
|
17 end
|
Nenue@44
|
18
|
Nenue@28
|
19 T.AddQuestWatch = function(questID)
|
Nenue@34
|
20 return OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST
|
Nenue@28
|
21 end
|
Nenue@28
|
22 T.AbandonQuest = function()
|
Nenue@28
|
23 QuestPOIUpdateIcons()
|
Nenue@34
|
24 return OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST
|
Nenue@28
|
25 end
|
Nenue@34
|
26 T.CompleteQuest = function()
|
Nenue@28
|
27 QuestPOIUpdateIcons()
|
Nenue@34
|
28 return OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST
|
Nenue@28
|
29 end
|
Nenue@28
|
30 T.AddAutoQuestPopUp = function(...)
|
Nenue@34
|
31 return OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP
|
Nenue@28
|
32 end
|
Nenue@34
|
33 T.RemoveAutoQuestPopUp = function(questID)
|
Nenue@45
|
34 AddQuestWatch(GetQuestLogIndexByID(questID))
|
Nenue@34
|
35 return OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP
|
Nenue@44
|
36 end
|
Nenue@44
|
37 --- SUPER_TRACKED_QUEST_CHANGED will fires
|
Nenue@44
|
38 local tprint = B.print('Tracker')
|
Nenue@44
|
39 T.SetSuperTrackedQuestID = function(questID)
|
Nenue@44
|
40 tprint('SetSuperTrackedQuestID', questID)
|
Nenue@44
|
41 for index, block in ipairs(T.Quest.usedBlocks) do
|
Nenue@44
|
42 if block:IsVisible() then
|
Nenue@44
|
43 if block.info.id == questID then
|
Nenue@44
|
44 block.SelectionOverlay:Show()
|
Nenue@44
|
45 else
|
Nenue@44
|
46 block.SelectionOverlay:Hide()
|
Nenue@44
|
47 end
|
Nenue@44
|
48 end
|
Nenue@44
|
49 end
|
Nenue@28
|
50 end
|
Nenue@28
|
51
|
Nenue@28
|
52
|
Nenue@45
|
53
|
Nenue@44
|
54 local previousSelection
|
Nenue@44
|
55 --@debug@
|
Nenue@44
|
56 local tprint = B.print('Tracker') -- @debug@
|
Nenue@44
|
57 T.SelectQuestLogEntry = function(logIndex)
|
Nenue@44
|
58 --@debug@
|
Nenue@44
|
59 if previousSelection and previousSelection ~= logIndex then
|
Nenue@44
|
60 print('swapping selection from', previousSelection, 'to', logIndex)
|
Nenue@44
|
61 end--@end-debug@
|
Nenue@44
|
62 previousSelection = logIndex
|
Nenue@39
|
63 end
|
Nenue@39
|
64
|
Nenue@44
|
65 --- Dummies for future ideas
|
Nenue@44
|
66 T.RemoveQuestWatch = function(questIndex, ...) end
|
Nenue@44
|
67 T.AddTrackedAchievement = function(cheevID) end
|
Nenue@44
|
68 T.RemoveTrackedAchievement = function(cheevID) end
|
Nenue@44
|
69 T.AcceptQuest = function() end |