WoW:API GetContainerNumSlots: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
(Formatting mostly)
m (Move page script moved page API GetContainerNumSlots to API GetContainerNumSlots without leaving a redirect)
 
(7 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{wowapi}} __NOTOC__
{{wowapi}} __NOTOC__


Return the number of slots available in the bag specified by the index.
Returns the total number of slots in the bag specified by the index.


  numberOfSlots = GetContainerNumSlots(bagID);
  numberOfSlots = GetContainerNumSlots([[bagID]]);


== Parameters ==
== Parameters ==
Line 13: Line 13:


:; numberOfSlots
:; numberOfSlots
::: Integer - the number of slots in the specified bag.
::: Integer - the number of slots in the specified bag, or 0 if there is no bag in the given slot.


== Details ==
== Details ==


* In 1.11.2, it appears that with the Key Ring, GetContainerNumSlots(-2) always returns zero, regardless of whether HasKey() is true or false.
* In 2.0.3, the Key Ring(-2) always returns 32.  The size of the bag displayed is determined by the amount of space used in the keyring.
* As of 3.0.3, immediately after a PLAYER_ENTERING_WORLD event (initial login or zone change through an instance, ie. any time you see a loading screen), several events of BAG_UPDATE are fired, one for each bag slot you have purchased.  All bag data is available during the PLAYER_ENTERING_WORLD event, but this function returns 0 for bags that have not had the BAG_UPDATE function called.  This is most likely due to the UI resetting its internal cache sometime between the PLAYER_ENTERING_WORLD event and the first BAG_UPDATE event. Also, that might be caused by the fact that some items (e.g. Ruby Essence from Oculus instance in Northrend) disappear from your bags when you're in the wrong zone.

Latest revision as of 04:45, 15 August 2023

WoW API < GetContainerNumSlots

Returns the total number of slots in the bag specified by the index.

numberOfSlots = GetContainerNumSlots(bagID);

Parameters

Arguments

bagID
Integer - the slot containing the bag, e.g. 0 for backpack, etc.

Returns

numberOfSlots
Integer - the number of slots in the specified bag, or 0 if there is no bag in the given slot.

Details

  • In 2.0.3, the Key Ring(-2) always returns 32. The size of the bag displayed is determined by the amount of space used in the keyring.
  • As of 3.0.3, immediately after a PLAYER_ENTERING_WORLD event (initial login or zone change through an instance, ie. any time you see a loading screen), several events of BAG_UPDATE are fired, one for each bag slot you have purchased. All bag data is available during the PLAYER_ENTERING_WORLD event, but this function returns 0 for bags that have not had the BAG_UPDATE function called. This is most likely due to the UI resetting its internal cache sometime between the PLAYER_ENTERING_WORLD event and the first BAG_UPDATE event. Also, that might be caused by the fact that some items (e.g. Ruby Essence from Oculus instance in Northrend) disappear from your bags when you're in the wrong zone.