Nenue@1
|
1 --- ${PACKAGE_NAME}
|
Nenue@1
|
2 -- @file-author@
|
Nenue@1
|
3 -- @project-revision@ @project-hash@
|
Nenue@1
|
4 -- @file-revision@ @file-hash@
|
Nenue@1
|
5 -- Created: 3/30/2016 1:23 AM
|
Nenue@1
|
6 local B = select(2,...).frame
|
Nenue@1
|
7 local mod = B:RegisterModule("ObjectiveTracker", _G.VeneerObjectiveWrapper, 'BuffFrame')
|
Nenue@19
|
8 local print = B.print('Objectives')
|
Nenue@6
|
9
|
Nenue@1
|
10 --------------------------------------------------------------------
|
Nenue@6
|
11 --- Events that are handled by Blizzard_ObjectiveTracker
|
Nenue@1
|
12 --------------------------------------------------------------------
|
Nenue@1
|
13
|
Nenue@6
|
14 -------------------------------------------------------------------
|
Nenue@6
|
15 --- Function hooks for BlizzUI compatibility
|
Nenue@6
|
16 -------------------------------------------------------------------
|
Nenue@6
|
17 mod.AddQuestWatch = function(questID)
|
Nenue@19
|
18 mod:Update(0x00000003)
|
Nenue@1
|
19 end
|
Nenue@6
|
20
|
Nenue@8
|
21 mod.RemoveQuestWatch = function(questIndex, ...)
|
Nenue@8
|
22 print('|cFFFF8800RemoveQuestWatch', questIndex, ...)
|
Nenue@8
|
23 local info = mod.Quest.LogInfo[questIndex]
|
Nenue@8
|
24
|
Nenue@8
|
25 -- remove quest refs
|
Nenue@8
|
26 mod.Quest.LogBlock[questIndex] = nil
|
Nenue@8
|
27 mod.Quest.QuestBlock[info.questID] = nil
|
Nenue@8
|
28
|
Nenue@8
|
29 -- remove if they still match
|
Nenue@8
|
30 if mod.Quest.WatchInfo[info.watchIndex] == info then
|
Nenue@8
|
31 print('cleaning dead WatchInfo entry')
|
Nenue@8
|
32 mod.Quest.WatchInfo[info.watchIndex] = nil
|
Nenue@8
|
33 end
|
Nenue@19
|
34 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST)
|
Nenue@19
|
35 end
|
Nenue@8
|
36
|
Nenue@19
|
37 mod.AddTrackedAchievement = function(cheevID)
|
Nenue@19
|
38 mod.CleanWidgets()
|
Nenue@19
|
39 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_ACHIEVEMENT)
|
Nenue@8
|
40 end
|
Nenue@8
|
41
|
Nenue@19
|
42
|
Nenue@8
|
43 mod.RemoveTrackedAchievement = function(cheevID)
|
Nenue@8
|
44 print('|cFFFF8800UntrackAchievement', cheevID)
|
Nenue@8
|
45 mod.CleanWidgets()
|
Nenue@19
|
46 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_ACHIEVEMENT)
|
Nenue@6
|
47 end
|
Nenue@6
|
48
|
Nenue@6
|
49 mod.AcceptQuest = function()
|
Nenue@19
|
50 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST_ADDED)
|
Nenue@6
|
51 end
|
Nenue@6
|
52
|
Nenue@6
|
53 mod.AbandonQuest = function()
|
Nenue@8
|
54 QuestPOIUpdateIcons()
|
Nenue@19
|
55 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST)
|
Nenue@19
|
56 end
|
Nenue@19
|
57 mod.TurnInQuest = function()
|
Nenue@19
|
58 QuestPOIUpdateIcons()
|
Nenue@19
|
59 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST)
|
Nenue@19
|
60 end
|
Nenue@19
|
61 mod.AddAutoQuestPopUp = function(...)
|
Nenue@19
|
62 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP)
|
Nenue@19
|
63 end
|
Nenue@19
|
64 mod.RemoveAutoQuestPopUp = function(...)
|
Nenue@19
|
65 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP)
|
Nenue@6
|
66 end
|
Nenue@6
|
67
|
Nenue@19
|
68 mod.SetSuperTrackedQuestID = function(questID)
|
Nenue@19
|
69 mod:Update()
|
Nenue@6
|
70 end |