Mercurial > wow > buffalo2
diff ObjectiveInfo.lua @ 19:605e8f0e46db
ObjectiveCore / Style / Events / Frame
- polishing the execution path for better performance
- make use of the Blizzard_ObjectiveTracker bitfield values to ensure compatibility in possible secure hooks
- avoid full updates when possible (using said bitfield values to indicate targeted sections)
- extreme streamlining of event handling layout: specific reason updates are invoked from API hooks; broader updates are invoked by when the event listener catches something vague like 'QUEST_LOG_UPDATE'
author | Nenue |
---|---|
date | Wed, 06 Apr 2016 07:38:35 -0400 |
parents | d1812fb10ae6 |
children | d5ee940de273 |
line wrap: on
line diff
--- a/ObjectiveInfo.lua Tue Apr 05 02:38:01 2016 -0400 +++ b/ObjectiveInfo.lua Wed Apr 06 07:38:35 2016 -0400 @@ -19,7 +19,7 @@ local LE_QUEST_FREQUENCY_WEEKLY = LE_QUEST_FREQUENCY_WEEKLY local FACTION_ALLIANCE, LE_QUEST_FACTION_HORDE, FACTION_HORDE, LE_QUEST_FACTION_HORDE = FACTION_ALLIANCE, LE_QUEST_FACTION_HORDE, FACTION_HORDE, LE_QUEST_FACTION_HORDE -local Tracker, Bonus, AutoQuest, Quest, Cheevs = mod.Tracker, mod.Bonus, mod.AutoQuest, mod.Quest, mod.Cheevs +local Tracker, Bonus, AutoQuest, Quest, Cheevs = mod.DefaultTracker, mod.Bonus, mod.AutoQuest, mod.Quest, mod.Cheevs -------------------------------------------------------------------- --- Tracker-specific data retrieval functions -------------------------------------------------------------------- @@ -31,9 +31,10 @@ AutoQuest.LogBlock = {} AutoQuest.QuestBlock = {} AutoQuest.WatchBlock = {} -AutoQuest.GetNumWatched = function() - AutoQuest.numWatched = GetNumAutoQuestPopUps() - return AutoQuest.numWatched +function AutoQuest:GetNumWatched () + print(self.name, self) + self.numWatched = GetNumAutoQuestPopUps() + return self.numWatched end AutoQuest.GetInfo = function(self, popupIndex) @@ -66,7 +67,8 @@ local taskData = {} Bonus.QuestBlock = {} Bonus.TaskWatch = {} -Bonus.GetNumWatched = function() +function Bonus:GetNumWatched () + print(self.name, self) local tasks = GetTasksTable() local numTasks = 0 Bonus.TaskWatch = {} @@ -86,6 +88,7 @@ end Bonus.GetInfo = function(self, taskIndex) + print(self.name, self) return Bonus.TaskWatch[taskIndex] end @@ -183,16 +186,21 @@ Quest.LogBlock = {} Quest.LogInfo = {} -Quest.GetNumWatched = function() - Quest.numAll = GetNumQuestLogEntries() - Quest.numWatched = GetNumQuestWatches() - return Quest.numWatched +function Quest:GetNumWatched () + print(self.name, self) + self.numAll = GetNumQuestLogEntries() + self.numWatched = GetNumQuestWatches() + return self.numWatched, self.numAll end Quest.GetInfo = function (self, watchIndex) print('|cFF00DDFFQuest|r.|cFF0088FFGetInfo(|r'.. tostring(watchIndex)..'|r)') local questID, title, questIndex, numObjectives, requiredMoney, isComplete, startEvent, isAutoComplete, failureTime, timeElapsed, questType, isTask, isStory, isOnMap, hasLocalPOI = GetQuestWatchInfo(watchIndex) + if not questIndex then + return + end + local _, level, suggestedGroup, isHeader, isCollapsed, isComplete, frequency, _, startEvent, displayQuestID, isOnMap, hasLocalPOI, isTask, isStory = GetQuestLogTitle(questIndex)