comparison ObjectiveTracker/AutoQuestPopupData.lua @ 45:dd1ae565f559

Hooks and Handlers: - correct argument mix-ups for AcceptQuest/QUEST_ACCEPTED handlers; fixes auto-watch - respond to AcknowledgeAutoAcceptQuest; fixes lingering popups - include Popup and Quest trackers in the response code for CompleteQuest; fixes content artifacts following the rollover of repeating popups seen in Ashran - clean up wacky OnEvent header Layout - add alpha blend options QuestData - reset objectives data when a quest is in a completed state; keeps old data from ever reaching the Default.x code
author Nenue
date Tue, 26 Apr 2016 14:57:18 -0400
parents 9480bd904f4c
children
comparison
equal deleted inserted replaced
44:756e8aeb040b 45:dd1ae565f559
10 local AutoQuest, Quest = T.AutoQuest, T.Quest 10 local AutoQuest, Quest = T.AutoQuest, T.Quest
11 local ShowQuestOffer, ShowQuestComplete, RemoveAutoQuestPopUp = ShowQuestOffer, ShowQuestComplete, RemoveAutoQuestPopUp 11 local ShowQuestOffer, ShowQuestComplete, RemoveAutoQuestPopUp = ShowQuestOffer, ShowQuestComplete, RemoveAutoQuestPopUp
12 local GetNumAutoQuestPopUps, GetAutoQuestPopUp, GetQuestLogIndexByID, GetQuestLogTitle = GetNumAutoQuestPopUps, GetAutoQuestPopUp, GetQuestLogIndexByID, GetQuestLogTitle 12 local GetNumAutoQuestPopUps, GetAutoQuestPopUp, GetQuestLogIndexByID, GetQuestLogTitle = GetNumAutoQuestPopUps, GetAutoQuestPopUp, GetQuestLogIndexByID, GetQuestLogTitle
13 --- Data retrieval 13 --- Data retrieval
14 function AutoQuest:GetNumWatched () 14 function AutoQuest:GetNumWatched ()
15 if true then return 0, 0, nil end 15 local numWatched = GetNumAutoQuestPopUps()
16 print(self.name, self) 16 local numAll = numWatched
17 --Quest:GetNumWatched()
18 self.numWatched = GetNumAutoQuestPopUps()
19 17
20 return self.numWatched 18 self.print('GetNumWatched', numWatched, 'popups detected')
19 for i = 1, numWatched do
20 self:GetInfo(i)
21 end
22
23 for i, block in ipairs(self.usedBlocks) do
24 if not GetAutoQuestPopUp(block.info.id) then
25 self:FreeBlock(block)
26 end
27 end
28
29 self.numWatched = numWatched
30 self.WatchList = self.Info
31 return numWatched
21 end 32 end
22 AutoQuest.GetInfo = function(self, popupIndex) 33 AutoQuest.GetInfo = function(self, index)
23 34
24 35
25 local questID, type = GetAutoQuestPopUp(popupIndex) 36 local questID, type = GetAutoQuestPopUp(index)
26 local questLogIndex = GetQuestLogIndexByID(questID) 37 local questLogIndex = GetQuestLogIndexByID(questID)
27 local title, level, suggestedGroup, isHeader, isCollapsed, isComplete, frequency, questID, startEvent, displayQuestID, isOnMap, hasLocalPOI, isTask, isStory = GetQuestLogTitle(questLogIndex) 38 local title, level, suggestedGroup, isHeader, isCollapsed, isComplete, frequency, questID, startEvent, displayQuestID, isOnMap, hasLocalPOI, isTask, isStory = GetQuestLogTitle(questLogIndex)
28 39
29 self.Info[questID] = self.Info[questID] or {} 40 self.Info[index] = self.Info[index] or {}
30 local popup = self.Info[questID] 41 local popup = self.Info[index]
31 popup.questID = questID 42 popup.questID = questID
32 popup.id = questID 43 popup.id = index
33 popup.title = title 44 popup.title = title
34 popup.description = type 45 popup.description = type
35 popup.popupType = type 46 popup.popupType = type
36 popup.logIndex = questLogIndex 47 popup.logIndex = questLogIndex
37 popup.popupIndex = popupIndex
38 48
39 self.Info[questID] = popup 49 self.Info[questID] = popup
40 self.WatchInfo[popupIndex] = popup 50 self.WatchInfo[index] = popup
41 51
42 52
43 return self.Info[questID] 53 return self.Info[questID]
44 end 54 end
45 55