Script API - v1.20.30
    Preparing search index...

    Defines a collection of items.

    Index

    Constructors

    • Parameters

      • itemType: string | ItemType

        Type of item to create. See the @minecraft/vanilla-data.MinecraftItemTypes enumeration for a list of standard item types in Minecraft experiences.

      • Optionalamount: 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

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

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

    Properties

    isStackable: boolean

    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.

    maxAmount: number

    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.

    type: ItemType

    The type of the item.

    typeId: string

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

    Methods

    • 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 or doesn't exist, undefined is returned.

      Returns ItemComponent

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

      // 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;
      let durabilityComp = itemStack.getComponent("durability");
      durabilityComp.damage;
      durabilityComp.maxDurability;
    • Returns ItemComponent[]

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

    • Returns string[]

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

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

    • 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

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

    • Parameters

      • itemStack: ItemStack

        ItemStack to check stacking compatability with.

      Returns boolean

      True if the Item Stack is stackable with the itemStack passed in.

      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.

    • Parameters

      • OptionalloreList: string[]

        List of lore lines. Each element in the list represents a new line. The maximum lore line count is 20. The maximum lore line length is 50 characters.

      Returns void

      Sets the lore value - a secondary display string - for an ItemStack. The lore list is cleared if set to an empty string or undefined.

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

      This function can throw errors.

      const diamondAwesomeSword = new mc.ItemStack(mc.MinecraftItemTypes.diamondSword, 1);
      let players = mc.world.getAllPlayers();

      diamondAwesomeSword.setLore(["§c§lDiamond Sword of Awesome§r", "+10 coolness", "§p+4 shiny§r"]);

      // hover over/select the item in your inventory to see the lore.
      const inventory = players[0].getComponent("inventory") as mc.EntityInventoryComponent;
      inventory.container.setItem(0, diamondAwesomeSword);

      let item = inventory.container.getItem(0);

      if (item) {
      let enchants = item.getComponent("minecraft:enchantments") as mc.ItemEnchantsComponent;
      let knockbackEnchant = new mc.Enchantment("knockback", 3);
      enchants.enchantments.addEnchantment(knockbackEnchant);
      }
      // 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"]);