WoW:API GetQuestLogLeaderBoard: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
(whoops)
No edit summary
Line 16: Line 16:
:;desc : String - The text description of the objective, like: "Kill foo: 0/3"
:;desc : String - The text description of the objective, like: "Kill foo: 0/3"


:;type : String - could be the following things: "item", "object", "monster", "reputation", or "event".
:;type : String - could be the following things: "item", "object", "monster", "reputation", or "event". The type "player" was added in WotLK, which is used by {{questlong|Alliance|80|No Mercy!}} and probably other quests.


:;done : Boolean - ''nil'' if this sub objective is not completed yet, else 1
:;done : Boolean - ''nil'' if this sub objective is not completed yet, else 1

Revision as of 23:34, 23 December 2008

WoW API < GetQuestLogLeaderBoard

This function returns up to 3 values:

local desc, type, done = GetQuestLogLeaderBoard(i, [questID])

Arguments
i
Index of the quests objective (see GetNumQuestLeaderBoards() ).
questID
Identifier of the quest in the quest log. If not provided, default to the currently selected Quest, via SelectQuestLogEntry().

Return values
desc
String - The text description of the objective, like: "Kill foo: 0/3"
type
String - could be the following things: "item", "object", "monster", "reputation", or "event". The type "player" was added in WotLK, which is used by Template:Questlong and probably other quests.
done
Boolean - nil if this sub objective is not completed yet, else 1

Useful examples
function GetLeaderBoardDetails (boardIndex,questIndex)
  local leaderboardTxt, itemType, isDone = GetQuestLogLeaderBoard (boardIndex,questIndex);
  local i, j, itemName, numItems, numNeeded = string.find(leaderboardTxt, "(.*):%s*([%d]+)%s*/%s*([%d]+)");
  return itemType, itemName, numItems, numNeeded, isDone;
end
-- returns eg. "monster", "Young Nightsaber slain", 1, 7, nil

Note: Only ever found one quest, Template:Quest that had an "object" objective.