Slots edit edit source Input slots/Output slots refers to the storage connected to the corresponding Input/Output (Blue/Red) circle, i.e., adding slot '1', will cause the ITD to only look at the 1st inventory slot in a connected storage. Enter the slot number in the text box and then click the + to add it to the list.
Enum Constant | Description |
---|---|
ANVIL | An anvil inventory, with 2 CRAFTING slots and 1 RESULT slot |
BARREL | A barrel box inventory, with 27 slots of type CONTAINER. |
BEACON | |
BLAST_FURNACE | A blast furnace inventory, with a RESULT slot, a CRAFTING slot, and aFUEL slot. |
BREWING | A brewing stand inventory, with one FUEL slot and four CRAFTING slots. |
CARTOGRAPHY | Cartography inventory with 2 CRAFTING slots, and 1 RESULT slot. |
CHEST | A chest inventory, with 0, 9, 18, 27, 36, 45, or 54 slots of typeCONTAINER. |
CRAFTING | A player's crafting inventory, with 4 CRAFTING slots and a RESULT slot. |
CREATIVE | The creative mode inventory, with only 9 QUICKBAR slots and nothingelse. |
DISPENSER | A dispenser inventory, with 9 slots of type CONTAINER. |
DROPPER | A dropper inventory, with 9 slots of type CONTAINER. |
ENCHANTING | An enchantment table inventory, with two CRAFTING slots and threeenchanting buttons. |
ENDER_CHEST | |
FURNACE | A furnace inventory, with a RESULT slot, a CRAFTING slot, and a FUELslot. |
GRINDSTONE | Grindstone inventory with 2 CRAFTING slots, and 1 RESULT slot. |
HOPPER | A hopper inventory, with 5 slots of type CONTAINER. |
LECTERN | |
LOOM | Loom inventory, with 3 CRAFTING slots, and 1 RESULT slot. |
MERCHANT | The merchant inventory, with 2 CRAFTING slots, and 1 RESULT slot. |
PLAYER | A player's inventory, with 9 QUICKBAR slots, 27 CONTAINER slots, 4 ARMORslots and 1 offhand slot. |
SHULKER_BOX | A shulker box inventory, with 27 slots of type CONTAINER. |
SMITHING | A smithing inventory, with 2 CRAFTING slots and 1 RESULT slot |
SMOKER | A smoker inventory, with a RESULT slot, a CRAFTING slot, and a FUEL slot. |
STONECUTTER | Stonecutter inventory with 1 CRAFTING slot, and 1 RESULT slot. |
WORKBENCH | A workbench inventory, with 9 CRAFTING slots and a RESULT slot. |
- The slot number is calculated starting at 0, counting up through the window's unique slots, and then counting through the players inventory. For all windows, the slot in the upper-left corner of the player's inventory is slot n where n is the number of unique slots, and slot number -999 is always used for clicking outside the window.
- Configuration info: shop-lines: 3 # Number of shop GUI lines. Maximum is 6 (54 slots) fill-empty: true # Put items in free inventory slot instead of adding items to existing stack. 'INKSACK-3': # ItemName-Durability (-durability is optional) amount: 2 # Amount of items to add to player inventory when buy.
- Whats permission issues in version Sign Inventory Saver 1.1? Sis.command and sis.limit not work. No update i need permissions version Sign Inventory Saver 1.1, but last update not work in my server (1.5.2) if Sign Inventory Saver 1.1 work perfect.
- All Superinterfaces:
Iterable
- All Known Subinterfaces:
AbstractHorseInventory
,AnvilInventory
,BeaconInventory
,BrewerInventory
,CartographyInventory
,CraftingInventory
,DoubleChestInventory
,EnchantingInventory
,FurnaceInventory
,GrindstoneInventory
,HorseInventory
,LecternInventory
,LlamaInventory
,LoomInventory
,MerchantInventory
,PlayerInventory
,SmithingInventory
,StonecutterInventory
Material.AIR
is unspecified.Note that whilst
iterator()
deals with the entire inventory, add/ contains / remove methods deal only with the storage contents.Consider using
getContents()
and getStorageContents()
forspecific iteration.- See Also:
getContents()
,getStorageContents()
-
Method Summary
Modifier and Type Method Description HashMap
addItem(ItemStack... items)
HashMap
all(ItemStack item)
Finds all slots in the inventory containing any ItemStacks with thegiven ItemStack.HashMap
all(Material material)
Returns a HashMap with all slots and ItemStacks in the inventory withthe given Material.void
clear()
void
clear(int index)
Clears out a particular slot in the index.boolean
contains(ItemStack item)
Checks if the inventory contains any ItemStacks matching the givenItemStack.boolean
contains(ItemStack item,int amount)
Checks if the inventory contains at least the minimum amount specifiedof exactly matching ItemStacks.boolean
contains(Material material)
Checks if the inventory contains any ItemStacks with the givenmaterial.boolean
contains(Material material,int amount)
Checks if the inventory contains any ItemStacks with the givenmaterial, adding to at least the minimum amount specified.boolean
containsAtLeast(ItemStack item,int amount)
Checks if the inventory contains ItemStacks matching the givenItemStack whose amounts sum to at least the minimum amount specified.int
first(ItemStack item)
Returns the first slot in the inventory containing an ItemStack withthe given stack.int
first(Material material)
Finds the first slot in the inventory containing an ItemStack with thegiven materialint
firstEmpty()
ItemStack[]
getContents()
Returns all ItemStacks from the inventoryInventoryHolder
getHolder()
Gets the block or entity belonging to the open inventoryItemStack
getItem(int index)
Returns the ItemStack found in the slot at the given indexLocation
getLocation()
Get the location of the block or entity which corresponds to this inventory.int
getMaxStackSize()
Returns the maximum stack size for an ItemStack in this inventory.int
getSize()
ItemStack[]
getStorageContents()
Return the contents from the section of the inventory where items canreasonably be expected to be stored.InventoryType
getType()
List
getViewers()
Gets a list of players viewing the inventory.boolean
isEmpty()
ListIterator
iterator()
ListIterator
iterator(int index)
Returns an iterator starting at the given index.void
remove(ItemStack item)
Removes all stacks in the inventory matching the given stack.void
remove(Material material)
Removes all stacks in the inventory matching the given material.HashMap
removeItem(ItemStack... items)
void
setContents(ItemStack[] items)
Completely replaces the inventory's contents.void
setItem(int index,ItemStack item)
Stores the ItemStack at the given index of the inventory.void
setMaxStackSize(int size)
This method allows you to change the maximum stack size for aninventory.void
setStorageContents(ItemStack[] items)
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Bukkit Inventory Slot Numbers List
-
Method Details
-
getSize
Returns the size of the inventory- Returns:
- The size of the inventory
-
getMaxStackSize
Returns the maximum stack size for an ItemStack in this inventory.- Returns:
- The maximum size for an ItemStack in this inventory.
-
setMaxStackSize
This method allows you to change the maximum stack size for aninventory.Caveats:
- Not all inventories respect this value.
- Stacks larger than 127 may be clipped when the world is saved.
- This value is not guaranteed to be preserved; be sure to set itbefore every time you want to set a slot over the max stack size.
- Stacks larger than the default max size for this type of inventorymay not display correctly in the client.
- Parameters:
size
- The new maximum stack size for items in this inventory.
-
getItem
Returns the ItemStack found in the slot at the given index- Parameters:
index
- The index of the Slot's ItemStack to return- Returns:
- The ItemStack in the slot
-
setItem
Stores the ItemStack at the given index of the inventory.- Parameters:
index
- The index where to put the ItemStackitem
- The ItemStack to set
-
addItem
@NotNullHashMapaddItem(@NotNullItemStack... items)throws IllegalArgumentExceptionStores the given ItemStacks in the inventory. This will try to fillexisting stacks and empty slots as well as it can.The returned HashMap contains what it couldn't store, where the key isthe index of the parameter, and the value is the ItemStack at thatindex of the varargs parameter. If all items are stored, it will returnan empty HashMap.
If you pass in ItemStacks which exceed the maximum stack size for theMaterial, first they will be added to partial stacks whereMaterial.getMaxStackSize() is not exceeded, up toMaterial.getMaxStackSize(). When there are no partial stacks leftstacks will be split on Inventory.getMaxStackSize() allowing you toexceed the maximum stack size for that material.
It is known that in some implementations this method will also setthe inputted argument amount to the number of that item not placed inslots.
- Parameters:
items
- The ItemStacks to add- Returns:
- A HashMap containing items that didn't fit.
- Throws:
IllegalArgumentException
- if items or any element in it is null
-
removeItem
@NotNullHashMapremoveItem(@NotNullItemStack... items)throws IllegalArgumentExceptionRemoves the given ItemStacks from the inventory.It will try to remove 'as much as possible' from the types and amountsyou give as arguments.
The returned HashMap contains what it couldn't remove, where the key isthe index of the parameter, and the value is the ItemStack at thatindex of the varargs parameter. If all the given ItemStacks areremoved, it will return an empty HashMap.
It is known that in some implementations this method will also set theinputted argument amount to the number of that item not removed fromslots.
- Parameters:
items
- The ItemStacks to remove- Returns:
- A HashMap containing items that couldn't be removed.
- Throws:
IllegalArgumentException
- if items is null
-
getContents
Returns all ItemStacks from the inventory- Returns:
- An array of ItemStacks from the inventory. Individual items may be null.
-
setContents
voidsetContents(@NotNullItemStack[] items)throws IllegalArgumentExceptionCompletely replaces the inventory's contents. Removes all existingcontents and replaces it with the ItemStacks given in the array.- Parameters:
items
- A complete replacement for the contents; the length mustbe less than or equal togetSize()
.- Throws:
IllegalArgumentException
- If the array has more items than theinventory.
-
getStorageContents
Return the contents from the section of the inventory where items canreasonably be expected to be stored. In most cases this will representthe entire inventory, but in some cases it may exclude armor or resultslots.
It is these contents which will be used for add / contains / removemethods which look for a specific stack.- Returns:
- inventory storage contents. Individual items may be null.
-
setStorageContents
voidsetStorageContents(@NotNullItemStack[] items)throws IllegalArgumentException- Parameters:
items
- The ItemStacks to use as storage contents- Throws:
IllegalArgumentException
- If the array has more items than theinventory.
-
contains
booleancontains(@NotNullMaterial material)throws IllegalArgumentExceptionChecks if the inventory contains any ItemStacks with the givenmaterial.- Parameters:
material
- The material to check for- Returns:
- true if an ItemStack is found with the given Material
- Throws:
IllegalArgumentException
- if material is null
-
contains
@Contract('null -> false')booleancontains(@NullableItemStack item)Checks if the inventory contains any ItemStacks matching the givenItemStack.This will only return true if both the type and the amount of the stackmatch.
- Parameters:
item
- The ItemStack to match against- Returns:
- false if item is null, true if any exactly matching ItemStackswere found
-
contains
booleancontains(@NotNullMaterial material,int amount)throws IllegalArgumentExceptionChecks if the inventory contains any ItemStacks with the givenmaterial, adding to at least the minimum amount specified.- Parameters:
material
- The material to check foramount
- The minimum amount- Returns:
- true if amount is less than 1, true if enough ItemStacks werefound to add to the given amount
- Throws:
IllegalArgumentException
- if material is null
-
contains
@Contract('null, _ -> false')booleancontains(@NullableItemStack item,int amount)Checks if the inventory contains at least the minimum amount specifiedof exactly matching ItemStacks.An ItemStack only counts if both the type and the amount of the stackmatch.
- Parameters:
item
- the ItemStack to match againstamount
- how many identical stacks to check for- Returns:
- false if item is null, true if amount less than 1, true ifamount of exactly matching ItemStacks were found
- See Also:
containsAtLeast(ItemStack, int)
-
containsAtLeast
@Contract('null, _ -> false')booleancontainsAtLeast(@NullableItemStack item,int amount)Checks if the inventory contains ItemStacks matching the givenItemStack whose amounts sum to at least the minimum amount specified.- Parameters:
item
- the ItemStack to match againstamount
- the minimum amount- Returns:
- false if item is null, true if amount less than 1, true ifenough ItemStacks were found to add to the given amount
-
all
@NotNullHashMapall(@NotNullMaterial material)throws IllegalArgumentExceptionReturns a HashMap with all slots and ItemStacks in the inventory withthe given Material.The HashMap contains entries where, the key is the slot index, and thevalue is the ItemStack in that slot. If no matching ItemStack with thegiven Material is found, an empty map is returned.
- Parameters:
material
- The material to look for- Returns:
- A HashMap containing the slot index, ItemStack pairs
- Throws:
IllegalArgumentException
- if material is null
-
all
@NotNullHashMapall(@NullableItemStack item)Finds all slots in the inventory containing any ItemStacks with thegiven ItemStack. This will only match slots if both the type and theamount of the stack matchThe HashMap contains entries where, the key is the slot index, and thevalue is the ItemStack in that slot. If no matching ItemStack with thegiven Material is found, an empty map is returned.
- Parameters:
item
- The ItemStack to match against- Returns:
- A map from slot indexes to item at index
-
first
intfirst(@NotNullMaterial material)throws IllegalArgumentExceptionFinds the first slot in the inventory containing an ItemStack with thegiven material- Parameters:
material
- The material to look for- Returns:
- The slot index of the given Material or -1 if not found
- Throws:
IllegalArgumentException
- if material is null
-
first
Returns the first slot in the inventory containing an ItemStack withthe given stack. This will only match a slot if both the type and theamount of the stack match- Parameters:
item
- The ItemStack to match against- Returns:
- The slot index of the given ItemStack or -1 if not found
-
firstEmpty
Returns the first empty Slot.- Returns:
- The first empty Slot found, or -1 if no empty slots.
-
isEmpty
Check whether or not this inventory is empty. An inventory is consideredto be empty if there are no ItemStacks in any slot of this inventory.- Returns:
- true if empty, false otherwise
-
remove
voidremove(@NotNullMaterial material)throws IllegalArgumentExceptionRemoves all stacks in the inventory matching the given material.- Parameters:
material
- The material to remove- Throws:
IllegalArgumentException
- if material is null
-
remove
Removes all stacks in the inventory matching the given stack.This will only match a slot if both the type and the amount of thestack match
- Parameters:
item
- The ItemStack to match against
-
clear
Clears out a particular slot in the index.- Parameters:
index
- The index to empty.
-
clear
Clears out the whole Inventory. -
getViewers
Gets a list of players viewing the inventory. Note that a player isconsidered to be viewing their own inventory and internal craftingscreen even when said inventory is not open. They will normally beconsidered to be viewing their inventory even when they have adifferent inventory screen open, but it's possible for customizedinventory screens to exclude the viewer's inventory, so this shouldnever be assumed to be non-empty.- Returns:
- A list of HumanEntities who are viewing this Inventory.
-
getType
Returns what type of inventory this is.- Returns:
- The InventoryType representing the type of inventory.
-
getHolder
Gets the block or entity belonging to the open inventory- Returns:
- The holder of the inventory; null if it has no holder.
-
iterator
- Specified by:
iterator
in interfaceIterable
-
iterator
@NotNullListIteratoriterator(int index)Returns an iterator starting at the given index. If the index ispositive, then the first call to next() will return the item at thatindex; if it is negative, the first call to previous will return theitem at index (getSize() + index).- Parameters:
index
- The index.- Returns:
- An iterator.
-
getLocation
Get the location of the block or entity which corresponds to this inventory. May return null if this containerwas custom created or is a virtual / subcontainer.- Returns:
- location or null if not applicable.
-