Class ItemStackBeta

Defines a collection of items.

Hierarchy

  • ItemStack

Constructors

  • Parameters

    • itemType: string | ItemType

      Type of item to create. See the MinecraftItemTypes enumeration for a list of standard item types in Minecraft experiences.

    • Optional amount: number

      Number of items to place in the stack, between 1-255. The provided value will be clamped to the item's maximum stack size. Note that certain items can only have one item in the stack.

    Returns ItemStack

    Remarks

    Creates a new instance of a stack of items for use in the world.

    This function can't be called in read-only mode.

    Throws

    Throws if itemType is invalid, or if amount is outside the range of 1-255.

Properties

amount: number

Remarks

Number of the items in the stack. Valid values range between 1-255. The provided value will be clamped to the item's maximum stack size.

This property can't be edited in read-only mode.

Throws

Throws if the value is outside the range of 1-255.

isStackable: boolean

Remarks

Returns whether the item is stackable. An item is considered stackable if the item's maximum stack size is greater than 1 and the item does not contain any custom data or properties.

keepOnDeath: boolean

Remarks

Gets or sets whether the item is kept on death.

This property can't be edited in read-only mode.

lockMode: ItemLockMode

Remarks

Gets or sets the item's lock mode. The default value is ItemLockMode.none.

This property can't be edited in read-only mode.

maxAmount: number

Remarks

The maximum stack size. This value varies depending on the type of item. For example, torches have a maximum stack size of 64, while eggs have a maximum stack size of 16.

nameTag?: string

Remarks

Given name of this stack of items. The name tag is displayed when hovering over the item. Setting the name tag to an empty string or undefined will remove the name tag.

This property can't be edited in read-only mode.

Throws

Throws if the length exceeds 255 characters.

type: ItemType

Remarks

The type of the item.

typeId: string

Remarks

Identifier of the type of items for the stack. If a namespace is not specified, 'minecraft:' is assumed. Examples include 'wheat' or 'apple'.

Methods

  • Returns ItemStack

    Remarks

    Creates an exact copy of the item stack, including any custom data or properties.

    This function can't be called in read-only mode.

  • Parameters

    • componentId: string

      The identifier of the component (e.g., 'minecraft:food') to retrieve. If no namespace prefix is specified, 'minecraft:' is assumed. If the component is not present on the item stack, undefined is returned.

    Returns undefined | ItemComponent

    Remarks

    Gets a component (that represents additional capabilities) for an item stack.

    This function can't be called in read-only mode.

    Example

    durability.ts

           // Get the maximum durability of a custom sword item
    const itemStack = new ItemStack("custom:sword");
    const durability = itemStack.getComponent("minecraft:durability") as ItemDurabilityComponent;
    const maxDurability = durability.maxDurability;
  • Returns ItemComponent[]

    Remarks

    Returns all components that are both present on this item stack and supported by the API.

    This function can't be called in read-only mode.

  • Returns string[]

    An array of lore strings. If the item does not have lore, returns an empty array.

    Remarks

    Returns the lore value - a secondary display string - for an ItemStack.

    This function can't be called in read-only mode.

  • Returns string[]

    Remarks

    This function can't be called in read-only mode.

  • Parameters

    • componentId: string

      The identifier of the component (e.g., 'minecraft:food') to retrieve. If no namespace prefix is specified, 'minecraft:' is assumed.

    Returns boolean

    Remarks

    Returns true if the specified component is present on this item stack.

    This function can't be called in read-only mode.

  • Parameters

    • tag: string

    Returns boolean

    Remarks

    This function can't be called in read-only mode.

  • Parameters

    Returns boolean

    Remarks

    Returns whether this item stack can be stacked with the given itemStack. This is determined by comparing the item type and any custom data and properties associated with the item stacks. The amount of each item stack is not taken into consideration.

    This function can't be called in read-only mode.

  • Parameters

    • Optional blockIdentifiers: string[]

    Returns void

    Remarks

    The list of block types this item can break in Adventure mode. The block names are displayed in the item's tooltip. Setting the value to undefined will clear the list.

    This function can't be called in read-only mode.

    Throws

    Throws if any of the provided block identifiers are invalid.

    Example

    example.ts

           // Creates a diamond pickaxe that can destroy cobblestone and obsidian
    const specialPickaxe = new ItemStack("minecraft:diamond_pickaxe");
    specialPickaxe.setCanDestroy(["minecraft:cobblestone", "minecraft:obsidian"]);
  • Parameters

    • Optional blockIdentifiers: string[]

    Returns void

    Remarks

    The list of block types this item can be placed on in Adventure mode. This is only applicable to block items. The block names are displayed in the item's tooltip. Setting the value to undefined will clear the list.

    This function can't be called in read-only mode.

    Throws

    Throws if any of the provided block identifiers are invalid.

    Example

    example.ts

           // Creates a gold block that can be placed on grass and dirt
    const specialGoldBlock = new ItemStack("minecraft:gold_block");
    specialPickaxe.setCanPlaceOn(["minecraft:grass", "minecraft:dirt"]);
  • Parameters

    • Optional loreList: string[]

    Returns void

    Remarks

    Sets the lore value - a secondary display string - for an ItemStack.

    This function can't be called in read-only mode.

    Example

    multilineLore.ts

           // Set the lore of an item to multiple lines of text
    const itemStack = new ItemStack("minecraft:diamond_sword");
    itemStack.setLore(["Line 1", "Line 2", "Line 3"]);
  • Parameters

    • eventName: string

      Name of the item type event to trigger. If a namespace is not specified, minecraft: is assumed.

    Returns void

    Remarks

    Triggers an item type event. For custom items, a number of events are defined in an items' definition for key item behaviors.

    This function can't be called in read-only mode.