WoW:API EquipmentManager UnpackLocation: Difference between revisions
Jump to navigation
Jump to search
(Created page) |
m (Move page script moved page API EquipmentManager UnpackLocation to API EquipmentManager UnpackLocation without leaving a redirect) |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
{{framexmlfunc| | {{framexmlfunc|FrameXML/EquipmentManager.lua}} | ||
Takes an integer location value as returned by [[API_GetEquipmentSetLocations|GetEquipmentSetLocations]] and returns unpacked location info. | Takes an integer location value as returned by [[API_GetEquipmentSetLocations|GetEquipmentSetLocations]] and returns unpacked location info. | ||
player, bank, bags, slot, bag = EquipmentManager_UnpackLocation(location) | player, bank, bags, slot, bag = EquipmentManager_UnpackLocation(location) | ||
== Arguments == | == Arguments == | ||
;location : integer - This is the integer returned for a specific slot by [[API_GetEquipmentSetLocations|GetEquipmentSetLocations]] | ;location | ||
: integer - This is the integer returned for a specific slot by [[API_GetEquipmentSetLocations|GetEquipmentSetLocations]] | |||
== Returns == | == Returns == | ||
:player, bank, bags, slot, bag | :player, bank, bags, slot, bag | ||
;player : boolean - Is the item currently available to the player (either equipped, or in the player's bags) | ;player | ||
;bank : boolean - Is the item in the bank (only true if the item is in the bank, and the player has the bank frame open) | : boolean - Is the item currently available to the player (either equipped, or in the player's bags) | ||
;bags : boolean - Is the item in a bag (if bank is also true, then it is in a bank bag) | ;bank | ||
;slot : integer - Which slot number is the item in, may be an [[InventorySlotId|inventory slot]] or bag slot (see notes) | : boolean - Is the item in the bank (only true if the item is in the bank, and the player has the bank frame open) | ||
;bag : integer - Which [[BagId|bag]] is the item in (nil if bags is false) | ;bags | ||
: boolean - Is the item in a bag (if bank is also true, then it is in a bank bag) | |||
;slot | |||
: integer - Which slot number is the item in, may be an [[InventorySlotId|inventory slot]] or bag slot (see notes) | |||
;bag | |||
: integer - Which [[BagId|bag]] is the item in (nil if bags is false) | |||
Latest revision as of 04:45, 15 August 2023
← WoW API < EquipmentManager:UnpackLocation
- This function is implemented in Lua here FrameXML/EquipmentManager.lua.
Takes an integer location value as returned by GetEquipmentSetLocations and returns unpacked location info.
player, bank, bags, slot, bag = EquipmentManager_UnpackLocation(location)
Arguments[edit]
- location
- integer - This is the integer returned for a specific slot by GetEquipmentSetLocations
Returns[edit]
- player, bank, bags, slot, bag
- player
- boolean - Is the item currently available to the player (either equipped, or in the player's bags)
- bank
- boolean - Is the item in the bank (only true if the item is in the bank, and the player has the bank frame open)
- bags
- boolean - Is the item in a bag (if bank is also true, then it is in a bank bag)
- slot
- integer - Which slot number is the item in, may be an inventory slot or bag slot (see notes)
- bag
- integer - Which bag is the item in (nil if bags is false)
Notes[edit]
If player or bank is true and bags is false, then slot is an inventory location - i.e. the item is either equipped in the given inventory slot or in the given bank slot.
If bags is true, then bag is a bag number and slot is the slot number of that bag where the item is located.
Example[edit]
local array = {}; -- It is always a good idea to use a reusable array if calling GetEquipmentSetLocations multiple times. function FindMainHand(eqset) -- let eqset be a string equal to the name of a valid equipment set GetEquipmentSetLocations(eqset, array); local player, bank, bags, slot, bag = EquipmentManager_UnpackLocation(array[16]); -- 16 is the Main Hand weapon slot if (player and not bags) then print("The Main Hand is equipped in slot #", slot); elseif (player and bags) then print("The Main Hand is in bag #", bag, "in slot #", slot); elseif (bank and not bags) then print("The Main Hand is in bank slot #", slot); elseif (bank and bags) then print("The Main Hand is in bank bag #", bag, "in slot #", slot); else print("The Main Hand could not be found."); end end
|