Mercurial > wow > buffalo2
diff ObjectiveTracker/ObjectiveTracker.lua @ 44:756e8aeb040b
- Default.lua
- simplified the response to SuperTrackedQuestID changes
- tag icons work again
author | Nenue |
---|---|
date | Mon, 25 Apr 2016 19:37:13 -0400 |
parents | 03ed70f846de |
children | dd1ae565f559 |
line wrap: on
line diff
--- a/ObjectiveTracker/ObjectiveTracker.lua Mon Apr 25 13:51:58 2016 -0400 +++ b/ObjectiveTracker/ObjectiveTracker.lua Mon Apr 25 19:37:13 2016 -0400 @@ -18,24 +18,24 @@ local unitLevel = UnitLevel('player') --- Performance values ---[[ - self:RegisterEvent("QUEST_LOG_UPDATE"); - self:RegisterEvent("TRACKED_ACHIEVEMENT_LIST_CHANGED"); - self:RegisterEvent("QUEST_WATCH_LIST_CHANGED"); - self:RegisterEvent("QUEST_AUTOCOMPLETE"); - self:RegisterEvent("QUEST_ACCEPTED"); - self:RegisterEvent("SUPER_TRACKED_QUEST_CHANGED"); - self:RegisterEvent("SCENARIO_UPDATE"); - self:RegisterEvent("SCENARIO_CRITERIA_UPDATE"); - self:RegisterEvent("TRACKED_ACHIEVEMENT_UPDATE"); - self:RegisterEvent("ZONE_CHANGED_NEW_AREA"); - self:RegisterEvent("ZONE_CHANGED"); - self:RegisterEvent("QUEST_POI_UPDATE"); - self:RegisterEvent("VARIABLES_LOADED"); - self:RegisterEvent("QUEST_TURNED_IN"); - self:RegisterEvent("PLAYER_MONEY"); - ]] +--- Done once per ui load +local BlizzHooks = { + 'AcceptQuest', + 'AddQuestWatch', + 'RemoveQuestWatch', + 'AbandonQuest', + 'AcknowledgeAutoAcceptQuest', + 'AddAutoQuestPopUp', + 'RemoveAutoQuestPopUp', + 'AddTrackedAchievement', + 'RemoveTrackedAchievement', + 'SetSuperTrackedQuestID', + 'SelectQuestLogEntry', +} +local enabledOnly = { + ['AddQuestWatch'] = true, +} --- These are the bitfields used by Blizzard_ObjectiveTracker to determine which segments get parsed. --- They are replicated here so that plugins can make use of any securehook args involving this info. @@ -298,7 +298,7 @@ return OBJECTIVE_TRACKER_UPDATE_ALL end Event.SUPER_TRACKED_QUEST_CHANGED = function(questID) - return OBJECTIVE_TRACKER_UPDATE_QUEST, questID + --return OBJECTIVE_TRACKER_UPDATE_QUEST, questID end Event.ZONE_CHANGED = function() local inMicroDungeon = IsPlayerInMicroDungeon(); @@ -363,20 +363,6 @@ end T.Event = Event ---- Done once per ui load -local BlizzHooks = { - ['AcceptQuest'] = 'AcceptQuest', - ['AddQuestWatch'] = 'AddQuestWatch', - ['RemoveQuestWatch'] = 'RemoveQuestWatch', - ['AbandonQuest'] = 'AbandonQuest', - ['AcknowledgeAutoAcceptQuest'] = 'AcknowledgeAutoAcceptQuest', - ['AddAutoQuestPopUp'] = 'AddAutoQuestPopUp', - ['RemoveAutoQuestPopUp'] = 'RemoveAutoQuestPopUp', - ['AddTrackedAchievement'] = 'AddTrackedAchievement', - ['RemoveTrackedAchievement'] = 'RemoveTrackedAchievement', - ['SetSuperTrackedQuestID'] = 'SetSuperTrackedQuestID', - ['SelectQuestLogEntry'] = 'SelectQuestLogEntry', -} local VeneerData T.SetWatchMoney = function(watchMoney, reason) @@ -507,13 +493,13 @@ VeneerData.CallLog = VeneerData.CallLog or {} if not T.isHooked then T.isHooked = true - for blizzFunc, veneerFunc in pairs(BlizzHooks) do - if T[veneerFunc] then - hooksecurefunc(blizzFunc, function(...) return T.OnHookedFunc(blizzFunc, ...) end) + for _, func in ipairs(BlizzHooks) do + if T[func] then + hooksecurefunc(func, function(...) return T.OnHookedFunc(func, ...) end) else - hooksecurefunc(blizzFunc, function(...) - print('|cFFFF0088securehook('..tostring(blizzFunc)..')|r args:', ...) - tinsert(VeneerData.CallLog, {blizzFunc, ...}) + hooksecurefunc(func, function(...) + print('|cFFFF0088securehook('..tostring(func)..')|r args:', ...) + tinsert(VeneerData.CallLog, {func, ...}) end) end end