diff ObjectiveInfo.lua @ 13:9455693fc290

Init - recall XML display state on reload ObjectiveFrame - quest coloring by relative level - quest coloring by daily/weekly/complete status - remember starting scroll value between reload - limit anchor points to edges for regions affected by style attributes ObjectiveInfo - AutoQuest outline definitions - Pull Quest title and tag data in addition to WatchInfo ObjectiveStyle - ensure consistent style table - hardcode certain attributes for sanity XML - ensure consistent naming conventions for heading and content elements - ensure hardcore anchors are based on edges - expansion of file structure to deal with complexities of dynamic widgets and style caching ObjectiveUI - determine primary style by block handler when restoring original style - moved framescript to 'ObjectiveWidgets' lua
author Nenue
date Sat, 02 Apr 2016 17:46:52 -0400
parents 7923243ae972
children ed642234f017
line wrap: on
line diff
--- a/ObjectiveInfo.lua	Sat Apr 02 05:01:54 2016 -0400
+++ b/ObjectiveInfo.lua	Sat Apr 02 17:46:52 2016 -0400
@@ -9,6 +9,19 @@
 --------------------------------------------------------------------
 --- Tracker-specific data retrieval functions
 --------------------------------------------------------------------
+
+
+-----------------------------
+--- AUTO_QUEST
+AutoQuest.name = "Remote Quests"
+AutoQuest.GetNumWatched = GetNumAutoQuestPopUps
+AutoQuest.GetInfo = function(watchIndex)
+  return Quest.GetInfo(watchIndex)
+end
+
+-----------------------------
+--- QUEST
+Quest.name = "Quests"
 Quest.itemButtons = {}
 Quest.freeButtons = {}
 Quest.POI = {}
@@ -20,6 +33,10 @@
   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)
+
+  local _, level, suggestedGroup, isHeader, isCollapsed, isComplete, frequency, questID, startEvent, displayQuestID, isOnMap, hasLocalPOI, isTask, isStory = GetQuestLogTitle(questIndex)
+  local questTagID, tagName = GetQuestTagInfo(questID);
+
   if not questID then
     return
   end
@@ -30,6 +47,7 @@
   q.type = 'Quest'
   q.questID = questID
   q.title = title
+  q.level = level
   q.questLogIndex = questIndex
   q.numObjectives = numObjectives
   q.requiredMoney = requiredMoney
@@ -44,21 +62,16 @@
   q.isOnMap = isOnMap
   q.hasLocalPOI = hasLocalPOI
 
-  --- Start QuestLogEntry calls
-  -----------------------------------------
-  SelectQuestLogEntry(questIndex)
-  q.greenRange = GetQuestGreenRange()
-  q.isDaily = QuestIsDaily()
-  q.isWeekly = QuestIsWeekly()
-  -----------------------------------------
-  --- End QuestLogEntry calls
-
-  q.isComplete = IsQuestComplete(questID)
-  q.isBreadCrumb = IsBreadcrumbQuest(questID)
-  q.isStoryQuest = IsStoryQuest(questID)
+  q.isDaily = ( frequency == LE_QUEST_FREQUENCY_DAILY and (not isComplete or isComplete == 0) )
+  q.isWeekly = ( frequency == LE_QUEST_FREQUENCY_WEEKLY and (not isComplete or isComplete == 0) )
+  q.isComplete = isComplete
+  q.isStory = isStory
+  q.isTask = isTask
+  --q.isBreadCrumb = isBreadCrumb
   q.completionText= GetQuestLogCompletionText(questIndex)
   q.numObjectives = GetNumQuestLeaderBoards(questIndex)
   q.isWatched = IsQuestWatched(questIndex)
+  q.isHardWatched = IsQuestHardWatched(questIndex)
   q.objectives = {}
   for i = 1, q.numObjectives do
     local text, type, finished = GetQuestLogLeaderBoard(i, questIndex)
@@ -121,10 +134,6 @@
   end
 end
 
-AutoQuest.GetInfo = function(watchIndex)
-  return Quest.GetInfo(watchIndex)
-end
-
 
 Cheevs.GetNumWatched = function(self)
   Cheevs.trackedCheevs = {GetTrackedAchievements()}