Skip to Content
⚠ Under Construction
ReferencePython APIendstone.inventory

endstone.inventory

Classes:

NameDescription
EquipmentSlot
InventoryInterface to the various inventories.
ItemFactory
ItemMetaRepresents the metadata of a generic item.
ItemStackRepresents a stack of items.
ItemTypeRepresents an item type.
MapMetaRepresents the metadata for a map item.
PlayerInventoryInterface to the inventory of a Player, including the four armor slots and any extra slots.

EquipmentSlot

EquipmentSlot(value:int)

Attributes:

BODY

BODY: EquipmentSlot

CHEST

CHEST: EquipmentSlot

FEET

FEET: EquipmentSlot

HAND

HAND: EquipmentSlot

HEAD

HEAD: EquipmentSlot

LEGS

LEGS: EquipmentSlot

OFF_HAND

OFF_HAND: EquipmentSlot

name

name: str

value

value: int

Inventory

Interface to the various inventories.

Methods:

NameDescription
add_itemStores the given ItemStacks in the inventory.
allFinds all slots in the inventory containing any ItemStacks with the given ItemStack.
Finds all slots in the inventory containing any ItemStacks with the given ItemType.
clearClears out a particular slot in the index.
Clears out the whole Inventory.
containsChecks if the inventory contains at least the minimum amount specified of exactly matching ItemStacks.
Checks if the inventory contains any ItemStacks with the given ItemStack.
Checks if the inventory contains any ItemStacks with the given ItemType.
contains_at_leastChecks if the inventory contains ItemStacks matching the given ItemStack whose amounts sum to at least the minimum amount specified.
Checks if the inventory contains any ItemStacks with the given ItemType, adding to at least the minimum amount specified.
firstReturns the first slot in the inventory containing an ItemStack with the given stack.
Finds the first slot in the inventory containing an ItemStack with the given ItemType.
get_itemReturns the ItemStack found in the slot at the given index
removeRemoves all stacks in the inventory matching the given stack.
Removes all stacks in the inventory matching the given ItemType.
remove_itemRemoves the given ItemStacks from the inventory.
set_itemStores the ItemStack at the given index of the inventory.

Attributes:

NameTypeDescription
contentslist[ItemStack]Returns all ItemStacks from the inventory
first_emptyintReturns the first empty Slot.
is_emptyboolCheck whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.
max_stack_sizeintReturns the maximum stack size for an ItemStack in this inventory.
sizeintReturns the size of the inventory

contents

contents: list[ItemStack]

Returns all ItemStacks from the inventory

first_empty

first_empty: int

Returns the first empty Slot.

is_empty

is_empty: bool

Check whether this inventory is empty. An inventory is considered to be empty if there are no ItemStacks in any slot of this inventory.

max_stack_size

max_stack_size: int

Returns the maximum stack size for an ItemStack in this inventory.

size

size: int

Returns the size of the inventory

add_item

add_item(*args) -> dict[int, ItemStack]

Stores the given ItemStacks in the inventory. This will try to fill existing stacks and empty slots as well as it can.

The returned map contains what it couldn’t store, where the key is the index, and the value is the ItemStack. If all items are stored, it will return an empty dict.

all

all(item:ItemStack) -> dict[int, ItemStack]

Finds all slots in the inventory containing any ItemStacks with the given ItemStack. This will only match slots if both the type and the amount of the stack match The returned map contains entries where, the key is the slot index, and the value is the ItemStack in that slot. If no matching ItemStack is found, an empty dict is returned.

all(type:str) -> dict[int, ItemStack]

Finds all slots in the inventory containing any ItemStacks with the given ItemType. The returned map contains entries where, the key is the slot index, and the value is the ItemStack in that slot. If no matching ItemStack is found, an empty dict is returned.

clear

clear(index:int) -> None

Clears out a particular slot in the index.

clear() -> None

Clears out the whole Inventory.

contains

contains(item:ItemStack, amount:int) -> bool

Checks if the inventory contains at least the minimum amount specified of exactly matching ItemStacks. An ItemStack only counts if both the type and the amount of the stack match.

contains(item:ItemStack) -> bool

Checks if the inventory contains any ItemStacks with the given ItemStack. This will only return true if both the type and the amount of the stack match.

contains(type:str) -> bool

Checks if the inventory contains any ItemStacks with the given ItemType.

contains_at_least

contains_at_least(item:ItemStack, amount:int) -> bool

Checks if the inventory contains ItemStacks matching the given ItemStack whose amounts sum to at least the minimum amount specified.

contains_at_least(type:str, amount:int) -> bool

Checks if the inventory contains any ItemStacks with the given ItemType, adding to at least the minimum amount specified.

first

first(item:ItemStack) -> int

Returns the first slot in the inventory containing an ItemStack with the given stack. This will only match slots if both the type and the amount of the stack match The returned map contains entries where, the key is the slot index, and the value is the ItemStack in that slot. If no matching ItemStack is found, an empty dict is returned.

first(type:str) -> int

Finds the first slot in the inventory containing an ItemStack with the given ItemType. The returned map contains entries where, the key is the slot index, and the value is the ItemStack in that slot. If no matching ItemStack is found, an empty dict is returned.

get_item

get_item(index:int) -> ItemStack

Returns the ItemStack found in the slot at the given index

remove

remove(item:ItemStack) -> None

Removes all stacks in the inventory matching the given stack. This will only match a slot if both the type and the amount of the stack match

remove(type:str) -> None

Removes all stacks in the inventory matching the given ItemType.

remove_item

remove_item(*args) -> dict[int, ItemStack]

Removes the given ItemStacks from the inventory. It will try to remove ‘as much as possible’ from the types and amounts you give as arguments.

The returned HashMap contains what it couldn’t remove, where the key is the index, and the value is the ItemStack. If all the given ItemStacks are removed, it will return an empty dict.

set_item

set_item(index:int, item:ItemStack) -> None

Stores the ItemStack at the given index of the inventory.

ItemFactory

Methods:

NameDescription
as_meta_forReturns an appropriate item meta for the specified item type.
equalsThis method is used to compare two ItemMeta objects.
get_item_metaThis creates a new item meta for the item type.
is_applicableThis method checks the item meta to confirm that it is applicable (no data lost if applied) to the specified ItemStack

as_meta_for

as_meta_for(meta:ItemMeta, type:ItemType) -> ItemMeta

Returns an appropriate item meta for the specified item type.

equals

equals(meta1:ItemMeta, meta2:ItemMeta) -> bool

This method is used to compare two ItemMeta objects.

get_item_meta

get_item_meta(type:ItemType) -> ItemMeta

This creates a new item meta for the item type.

is_applicable

is_applicable(meta:ItemMeta, type:ItemType) -> bool

This method checks the item meta to confirm that it is applicable (no data lost if applied) to the specified ItemStack

ItemMeta

Represents the metadata of a generic item.

Methods:

NameDescription
add_enchantAdds the specified enchantment to this item meta.
cloneCreates a clone of the current metadata.
get_enchant_levelChecks for the level of the specified enchantment.
has_enchantChecks for existence of the specified enchantment.
remove_enchantRemoves the specified enchantment from this item meta.
remove_enchantsRemoves all enchantments from this item meta.

Attributes:

NameTypeDescription
damageintGets or sets the damage.
display_namestr | NoneGets or sets the display name.
enchantsdict[str, int]Returns a copy the enchantments in this ItemMeta.
has_damageboolChecks to see if this item has damage.
has_display_nameboolChecks for existence of a display name.
has_enchantsboolChecks for the existence of any enchantments.
has_loreboolChecks for existence of lore.
has_repair_costboolChecks to see if this item has a repair penalty.
is_unbreakableboolGets or sets the unbreakable tag. An unbreakable item will not lose durability.
lorelist[str] | NoneGets or sets the lore for this item.
repair_costintGets or sets the repair penalty.

damage

damage: int

Gets or sets the damage.

display_name

display_name: str | None

Gets or sets the display name.

enchants

enchants: dict[str, int]

Returns a copy the enchantments in this ItemMeta.

has_damage

has_damage: bool

Checks to see if this item has damage.

has_display_name

has_display_name: bool

Checks for existence of a display name.

has_enchants

has_enchants: bool

Checks for the existence of any enchantments.

has_lore

has_lore: bool

Checks for existence of lore.

has_repair_cost

has_repair_cost: bool

Checks to see if this item has a repair penalty.

is_unbreakable

is_unbreakable: bool

Gets or sets the unbreakable tag. An unbreakable item will not lose durability.

lore

lore: list[str] | None

Gets or sets the lore for this item.

repair_cost

repair_cost: int

Gets or sets the repair penalty.

add_enchant

add_enchant(id:str, level:int, force:bool = False) -> bool

Adds the specified enchantment to this item meta.

clone

clone() -> ItemMeta

Creates a clone of the current metadata.

get_enchant_level

get_enchant_level(id:str) -> int

Checks for the level of the specified enchantment.

has_enchant

has_enchant(id:str) -> bool

Checks for existence of the specified enchantment.

remove_enchant

remove_enchant(id:str) -> bool

Removes the specified enchantment from this item meta.

remove_enchants

remove_enchants() -> None

Removes all enchantments from this item meta.

ItemStack

ItemStack(type:str, amount:int = 1, data:int = 0)

Represents a stack of items.

Methods:

NameDescription
is_similarChecks if the two stacks are equal, but does not consider stack size (amount).
set_item_metaSet the ItemMeta of this ItemStack.

Attributes:

NameTypeDescription
amountintGets or sets the amount of items in this stack.
dataintGets or sets the data for this stack of items.
item_metaItemMetaGets a copy of the ItemMeta of this ItemStack.
max_stack_sizeintGet the maximum stack size for this item.
typeItemTypeGets or sets the type of this item.

amount

amount: int

Gets or sets the amount of items in this stack.

data

data: int

Gets or sets the data for this stack of items.

item_meta

item_meta: ItemMeta

Gets a copy of the ItemMeta of this ItemStack.

max_stack_size

max_stack_size: int

Get the maximum stack size for this item.

type

type: ItemType

Gets or sets the type of this item.

is_similar

is_similar(other:ItemStack) -> bool

Checks if the two stacks are equal, but does not consider stack size (amount).

set_item_meta

set_item_meta(meta:ItemMeta) -> bool

Set the ItemMeta of this ItemStack.

ItemType

Represents an item type.

Methods:

NameDescription
getAttempts to get the ItemType with the given name.

Attributes:

NameTypeDescription
idstrReturn the identifier of this item type.
keyNamespacedKeyReturn the namespaced identifier of this item type.
max_durabilityintGets the maximum durability of this item type
max_stack_sizeintGets the maximum amount of this item type that can be held in a stack.
translation_keystrGet the translation key, suitable for use in a translation component.

id

id: str

Return the identifier of this item type.

key

key: NamespacedKey

Return the namespaced identifier of this item type.

max_durability

max_durability: int

Gets the maximum durability of this item type

max_stack_size

max_stack_size: int

Gets the maximum amount of this item type that can be held in a stack.

translation_key

translation_key: str

Get the translation key, suitable for use in a translation component.

get

get(name:str) -> ItemType

Attempts to get the ItemType with the given name.

MapMeta

Bases: ItemMeta

Represents the metadata for a map item.

PlayerInventory

Bases: Inventory

Interface to the inventory of a Player, including the four armor slots and any extra slots.

Attributes:

NameTypeDescription
bootsItemStackGets or sets the ItemStack in the boots slot
chestplateItemStackGets or sets the ItemStack in the chestplate slot
held_item_slotintGets or sets the slot number of the currently held item
helmetItemStackGets or sets the ItemStack in the helmet slot
item_in_main_handItemStackGets or sets the item the player is currently holding in their main hand.
item_in_off_handItemStackGets or sets the item the player is currently holding in their off hand.
leggingsItemStackGets or sets the ItemStack in the leg slot

boots

boots: ItemStack

Gets or sets the ItemStack in the boots slot

chestplate

chestplate: ItemStack

Gets or sets the ItemStack in the chestplate slot

held_item_slot

held_item_slot: int

Gets or sets the slot number of the currently held item

helmet

helmet: ItemStack

Gets or sets the ItemStack in the helmet slot

item_in_main_hand

item_in_main_hand: ItemStack

Gets or sets the item the player is currently holding in their main hand.

item_in_off_hand

item_in_off_hand: ItemStack

Gets or sets the item the player is currently holding in their off hand.

leggings

leggings: ItemStack

Gets or sets the ItemStack in the leg slot

Last updated on