WoW:API GetBattlefieldStatus: Difference between revisions
(__NOTOC__) |
m (Move page script moved page API GetBattlefieldStatus to API GetBattlefieldStatus without leaving a redirect) |
||
| (5 intermediate revisions by 4 users not shown) | |||
| Line 2: | Line 2: | ||
Get the status of the battlefield that the player is either queued for or inside. | Get the status of the battlefield that the player is either queued for or inside. | ||
status, mapName, instanceID = GetBattlefieldStatus(index); | status, mapName, instanceID, lowestlevel, highestlevel, teamSize, registeredMatch = GetBattlefieldStatus(index); | ||
== Parameters == | == Parameters == | ||
| Line 13: | Line 13: | ||
:;status : String - Battlefield status (none, queued, confirm, active, error) | :;status : String - Battlefield status (none, queued, confirm, active, error) | ||
:;map : String - Localized battlefield name ([[Warsong Gulch]], [[Arathi Basin]], [[Alterac Valley]] or | :;map : String - Localized battlefield name ([[Warsong Gulch]], [[Arathi Basin]], [[Alterac Valley]] or nil) | ||
:;instanceID : Integer - Battlefield instance (returns 0 until you are inside an active battlefield) | :;instanceID : Integer - Battlefield instance (returns 0 until you are inside an active battlefield) | ||
:;lowestLevel : Integer - Lowest level in the battleground that will be joining (10, 20, 30, 40, 51 | :;lowestLevel : Integer - Lowest level in the battleground that will be joining (10, 20, 30, 40, 51, 60, 61, 70) | ||
:;highestLevel : Integer - Highest level in the battleground that will be joining (19, 29, 39, 49 | :;highestLevel : Integer - Highest level in the battleground that will be joining (19, 29, 39, 49, 60, 69, 70) | ||
:;teamSize: Integer - Team size of the battlefields queue (2, 3, 5 or 0 if not an arena queue) | |||
:;teamSize: Integer - | :;registeredMatch: Integer - Returns 1 if it's a registered arena queue, returns 0 if it's a skirimish or not an arena queue, use teamSize to check for arenas | ||
---- | ---- | ||
=== Details === | === Details === | ||
Used for retrieving the status of the | Used for retrieving the status of the battlefields that the player is queued or inside of. If the player is not queued for a battlefield you request it'll return a status of none, requesting an index above 3 will return nil, map name will either be the last battlefield this index was used for or nil you should always use status to verify if it's an an active queue/game. | ||
As of [[Patch 2.4.0]] map is displayed as "Eastern Kingdoms" during confirm status, and the real map is shown once it's changed to active. instanceID is now always 0 for arena matches as well. | |||
==== Status ==== | ==== Status ==== | ||
* queued - Waiting for a battlefield to become ready | * queued - Waiting for a battlefield to become ready, you're in the queue | ||
* confirm - Ready to join a battlefield | * confirm - Ready to join a battlefield | ||
* active - | * active - Inside an active battlefield | ||
* none - | * none - Not queued for anything in this index | ||
* error - This should never happen | * error - This should never happen | ||
---- | ---- | ||
=== Example === | === Example === | ||
Display a list of battlefield brackets and | Display a list of battlefield brackets and arenas you're currently queued for, pending confirmation, in, or just finished. | ||
local status, mapName, instanceID, minlevel, maxlevel; | local status, mapName, instanceID, minlevel, maxlevel; | ||
| Line 45: | Line 47: | ||
DEFAULT_CHAT_FRAME:AddMessage(mapName .. string.format(" (%d-%d): ", minlevel, maxlevel) ..status); | DEFAULT_CHAT_FRAME:AddMessage(mapName .. string.format(" (%d-%d): ", minlevel, maxlevel) ..status); | ||
end | end | ||
end | |||
Latest revision as of 04:45, 15 August 2023
← WoW API < GetBattlefieldStatus
Get the status of the battlefield that the player is either queued for or inside.
status, mapName, instanceID, lowestlevel, highestlevel, teamSize, registeredMatch = GetBattlefieldStatus(index);
Parameters
Arguments
- index
- Index of the battlefield you wish to view
Returns
- status
- String - Battlefield status (none, queued, confirm, active, error)
- map
- String - Localized battlefield name (Warsong Gulch, Arathi Basin, Alterac Valley or nil)
- instanceID
- Integer - Battlefield instance (returns 0 until you are inside an active battlefield)
- lowestLevel
- Integer - Lowest level in the battleground that will be joining (10, 20, 30, 40, 51, 60, 61, 70)
- highestLevel
- Integer - Highest level in the battleground that will be joining (19, 29, 39, 49, 60, 69, 70)
- teamSize
- Integer - Team size of the battlefields queue (2, 3, 5 or 0 if not an arena queue)
- registeredMatch
- Integer - Returns 1 if it's a registered arena queue, returns 0 if it's a skirimish or not an arena queue, use teamSize to check for arenas
Details
Used for retrieving the status of the battlefields that the player is queued or inside of. If the player is not queued for a battlefield you request it'll return a status of none, requesting an index above 3 will return nil, map name will either be the last battlefield this index was used for or nil you should always use status to verify if it's an an active queue/game.
As of Patch 2.4.0 map is displayed as "Eastern Kingdoms" during confirm status, and the real map is shown once it's changed to active. instanceID is now always 0 for arena matches as well.
Status
- queued - Waiting for a battlefield to become ready, you're in the queue
- confirm - Ready to join a battlefield
- active - Inside an active battlefield
- none - Not queued for anything in this index
- error - This should never happen
Example
Display a list of battlefield brackets and arenas you're currently queued for, pending confirmation, in, or just finished.
local status, mapName, instanceID, minlevel, maxlevel;
for i=1, MAX_BATTLEFIELD_QUEUES do
status, mapName, instanceID, minlevel, maxlevel, teamSize = GetBattlefieldStatus(i);
if( teamSize > 0 ) then
DEFAULT_CHAT_FRAME:AddMessage(mapName .. string.format("%dvs%d (%d-%d): ", minlevel, maxlevel, teamType, teamType) ..status);
else
DEFAULT_CHAT_FRAME:AddMessage(mapName .. string.format(" (%d-%d): ", minlevel, maxlevel) ..status);
end
end