This function returns up to 3 values:
local desc, type, done = GetQuestLogLeaderBoard(i, [questID])
- Index of the quests objective (see GetNumQuestLeaderBoards() ).
- Identifier of the quest in the quest log. If not provided, default to the currently selected Quest, via SelectQuestLogEntry().
- Return values
- String - The text description of the objective, like: "Kill foo: 0/3"
- String - could be the following things: "item", "object", "monster", "reputation", "log", or "event".
- 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
The type "player" was added in WotLK, which is used by Template:Questlong and probably other quests.
The type "log" was added sometime around patch 3.3.0, and seems to have replaced many instances of "event".
Only ever found one quest, Template:Quest that had an "object" objective.
The "desc" returnvalue can be incomplete under some (unknown) circumstances containing an empty string or just says "slain" instead the real objective text.