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@21
|
21 local Quest = mod.Quest
|
Nenue@8
|
22 mod.RemoveQuestWatch = function(questIndex, ...)
|
Nenue@8
|
23 print('|cFFFF8800RemoveQuestWatch', questIndex, ...)
|
Nenue@21
|
24
|
Nenue@8
|
25 local info = mod.Quest.LogInfo[questIndex]
|
Nenue@8
|
26
|
Nenue@8
|
27 -- remove quest refs
|
Nenue@21
|
28 local block = Quest.QuestBlock[info.questID]
|
Nenue@21
|
29 Quest.QuestBlock[info.questID] = nil
|
Nenue@21
|
30 Quest.LogBlock[questIndex] = nil
|
Nenue@8
|
31
|
Nenue@8
|
32 -- remove if they still match
|
Nenue@21
|
33 if Quest.WatchInfo[info.watchIndex] == info then
|
Nenue@8
|
34 print('cleaning dead WatchInfo entry')
|
Nenue@21
|
35 Quest.WatchInfo[info.watchIndex] = nil
|
Nenue@8
|
36 end
|
Nenue@21
|
37
|
Nenue@19
|
38 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST)
|
Nenue@19
|
39 end
|
Nenue@8
|
40
|
Nenue@19
|
41 mod.AddTrackedAchievement = function(cheevID)
|
Nenue@19
|
42 mod.CleanWidgets()
|
Nenue@19
|
43 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_ACHIEVEMENT)
|
Nenue@8
|
44 end
|
Nenue@8
|
45
|
Nenue@19
|
46
|
Nenue@8
|
47 mod.RemoveTrackedAchievement = function(cheevID)
|
Nenue@8
|
48 print('|cFFFF8800UntrackAchievement', cheevID)
|
Nenue@8
|
49 mod.CleanWidgets()
|
Nenue@19
|
50 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_ACHIEVEMENT)
|
Nenue@6
|
51 end
|
Nenue@6
|
52
|
Nenue@6
|
53 mod.AcceptQuest = function()
|
Nenue@19
|
54 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST_ADDED)
|
Nenue@6
|
55 end
|
Nenue@6
|
56
|
Nenue@6
|
57 mod.AbandonQuest = function()
|
Nenue@8
|
58 QuestPOIUpdateIcons()
|
Nenue@19
|
59 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST)
|
Nenue@19
|
60 end
|
Nenue@19
|
61 mod.TurnInQuest = function()
|
Nenue@19
|
62 QuestPOIUpdateIcons()
|
Nenue@19
|
63 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_QUEST)
|
Nenue@19
|
64 end
|
Nenue@19
|
65 mod.AddAutoQuestPopUp = function(...)
|
Nenue@19
|
66 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP)
|
Nenue@19
|
67 end
|
Nenue@19
|
68 mod.RemoveAutoQuestPopUp = function(...)
|
Nenue@19
|
69 mod:Update(OBJECTIVE_TRACKER_UPDATE_MODULE_AUTO_QUEST_POPUP)
|
Nenue@6
|
70 end
|
Nenue@6
|
71
|
Nenue@20
|
72
|
Nenue@20
|
73
|
Nenue@19
|
74 mod.SetSuperTrackedQuestID = function(questID)
|
Nenue@21
|
75 --mod:Update()
|
Nenue@6
|
76 end |