Fandom

WoWWiki

API EquipmentManager UnpackLocation

104,642pages on
this wiki
Add New Page
Talk0 Share

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

WoW API < EquipmentManager:UnpackLocation
Icon-information-22x22This function is implemented by FrameXML in [DEPRECATED http://wowprogramming.com/utils/xmlbrowser/live/FrameXML/EquipmentManager.lua 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


Also on Fandom

Random Wiki