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

    Represents a block in a dimension. A block represents a unique X, Y, and Z within a dimension and get/sets the state of the block at that location. This type was significantly updated in version 1.17.10.21.

    Index

    Properties

    dimension: Dimension

    Returns the dimension that the block is within.

    isAir: boolean

    Returns true if this block is an air block (i.e., empty space).

    This property can throw when used.

    LocationInUnloadedChunkError

    LocationOutOfWorldBoundariesError

    isLiquid: boolean

    Returns true if this block is a liquid block - (e.g., a water block and a lava block are liquid, while an air block and a stone block are not. Water logged blocks are not liquid blocks).

    This property can throw when used.

    LocationInUnloadedChunkError

    LocationOutOfWorldBoundariesError

    location: Vector3

    Coordinates of the specified block.

    This property can throw when used.

    permutation: BlockPermutation

    Additional block configuration data that describes the block.

    This property can throw when used.

    LocationInUnloadedChunkError

    LocationOutOfWorldBoundariesError

    x: number

    X coordinate of the block.

    y: number

    Y coordinate of the block.

    z: number

    Z coordinate of the block.

    Methods

    • Returns Vector3

      Returns the @minecraft/server.Location of the center of this block on the X and Z axis.

    • Returns Vector3

      Returns the @minecraft/server.Location of the center of this block on the X, Y, and Z axis.

    • Parameters

      • componentId: string

        The identifier of the component (e.g., 'minecraft:inventory'). If no namespace prefix is specified, 'minecraft:' is assumed. Available component IDs can be found as part of the BlockComponentTypes enum.

      Returns BlockComponent | undefined

      Returns the component if it exists on the block, otherwise undefined.

      Gets a component (that represents additional capabilities) for a block - for example, an inventory component of a chest block.

      import { ItemStack } from "@minecraft/server";

      const getEntityInventoryComponent = block.getComponent("inventory");
      const inventoryContainer = getEntityInventoryComponent.container;

      // Custom function to add an item to the inventory
      function addItemToInventory(itemStack) {
      return inventoryContainer.addItem(itemStack);
      }

      // Custom function to move an item within the inventory
      function moveItemWithinInventory(fromSlot, toSlot) {
      inventoryContainer.moveItem(fromSlot, toSlot, inventoryContainer);
      }

      // Custom function to transfer an item from inventory to another container
      function transferItemToContainer(fromSlot, targetContainer) {
      return inventoryContainer.transferItem(fromSlot, targetContainer);
      }

      // Example usage of the custom functions
      const newItemStack = new ItemStack("apple", 10); // Assuming "apple" is a valid item
      const addedItem = addItemToInventory(newItemStack);
      if (addedItem) {
      console.log("Item added to inventory:", addedItem);
      }

      const sourceSlot = 2;
      const destinationSlot = 5;
      moveItemWithinInventory(sourceSlot, destinationSlot);

      const targetContainer = someOtherContainer; // Assuming 'someOtherContainer' is an instance of another container
      const transferredItem = transferItemToContainer(0, targetContainer);
      if (transferredItem) {
      console.log("Item transferred to another container:", transferredItem);
      }
    • Parameters

      • tag: string

        Tag to check for.

      Returns boolean

      Returns true if the permutation of this block has the tag, else false.

      Checks to see if the permutation of this block has a specific tag.

      import { world } from "@minecraft/server";

      // Fetch the block
      const block = world.getDimension("overworld").getBlock({ x: 1, y: 2, z: 3 });

      console.log(`Block is dirt: ${block.hasTag("dirt")}`);
      console.log(`Block is wood: ${block.hasTag("wood")}`);
      console.log(`Block is stone: ${block.hasTag("stone")}`);
    • Returns boolean

      True if this block object is still working and valid.

      Returns true if this reference to a block is still valid (for example, if the block is unloaded, references to that block will no longer be valid.)

    • Parameters

      • offset: Vector3

        The offset vector. For example, an offset of 0, 1, 0 will return the block above the current block.

      Returns Block | undefined

      Block at the specified offset, or undefined if that block could not be retrieved (for example, the block and its relative chunk is not loaded yet.)

      Returns a block at an offset relative vector to this block.