Provides access to a mob's equipment slots. This component exists for all mob entities.

Example

givePlayerElytra.ts

// Gives the player Elytra
import { EquipmentSlot, ItemStack, Player, EntityComponentTypes } from '@minecraft/server';
import { MinecraftItemTypes } from '@minecraft/vanilla-data';

function giveEquipment(player: Player) {
const equipmentCompPlayer = player.getComponent(EntityComponentTypes.Equippable);
if (equipmentCompPlayer) {
equipmentCompPlayer.setEquipment(EquipmentSlot.Chest, new ItemStack(MinecraftItemTypes.Elytra));
}
}

Example

givePlayerEquipment.ts

// Gives the player some equipment
import { EquipmentSlot, ItemStack, Player, EntityComponentTypes } from '@minecraft/server';
import { MinecraftItemTypes } from '@minecraft/vanilla-data';

function giveEquipment(player: Player) {
const equipmentCompPlayer = player.getComponent(EntityComponentTypes.Equippable);
if (equipmentCompPlayer) {
equipmentCompPlayer.setEquipment(EquipmentSlot.Head, new ItemStack(MinecraftItemTypes.GoldenHelmet));
equipmentCompPlayer.setEquipment(EquipmentSlot.Chest, new ItemStack(MinecraftItemTypes.IronChestplate));
equipmentCompPlayer.setEquipment(EquipmentSlot.Legs, new ItemStack(MinecraftItemTypes.DiamondLeggings));
equipmentCompPlayer.setEquipment(EquipmentSlot.Feet, new ItemStack(MinecraftItemTypes.NetheriteBoots));
equipmentCompPlayer.setEquipment(EquipmentSlot.Mainhand, new ItemStack(MinecraftItemTypes.WoodenSword));
equipmentCompPlayer.setEquipment(EquipmentSlot.Offhand, new ItemStack(MinecraftItemTypes.Shield));
} else {
console.warn('No equipment component found on player');
}
}

Example

clearOffhand.ts

import { EquipmentSlot, Player } from "@minecraft/server";

function clearOffhand(player: Player) {
const equippable = player.getComponent("minecraft:equippable");
equippable.setEquipment(EquipmentSlot.Offhand); // Assuming undefined (empty slot) as an example
}

Example

getMainhandSlot.js

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

const player = world.getPlayers()[0];
const equippable = player.getComponent("equippable");
const slot = equippable.getEquipmentSlot(EquipmentSlot.Mainhand);

Hierarchy

Constructors

Properties

entity: Entity

Remarks

The entity that owns this component. The entity will be undefined if it has been removed.

typeId: string

Remarks

Identifier of the component.

componentId: "minecraft:equippable" = 'minecraft:equippable'

Methods

  • Parameters

    • equipmentSlot: EquipmentSlot

      The equipment slot. e.g. "head", "chest", "offhand"

    Returns ItemStack

    Returns the item equipped to the given EquipmentSlot. If empty, returns undefined.

    Remarks

    Gets the equipped item for the given EquipmentSlot.

    Throws

    This function can throw errors.

  • Parameters

    • equipmentSlot: EquipmentSlot

      The equipment slot. e.g. "head", "chest", "offhand".

    Returns ContainerSlot

    Returns the ContainerSlot corresponding to the given EquipmentSlot.

    Remarks

    Gets the ContainerSlot corresponding to the given EquipmentSlot.

    Throws

    This function can throw errors.

  • Returns boolean

    Whether the component is valid.

    Remarks

    Returns whether the component is valid. A component is considered valid if its owner is valid, in addition to any addition to any additional validation required by the component.

  • Parameters

    • equipmentSlot: EquipmentSlot

      The equipment slot. e.g. "head", "chest", "offhand".

    • Optional itemStack: ItemStack

      The item to equip. If undefined, clears the slot.

      Optional

    Returns boolean

    Remarks

    Replaces the item in the given EquipmentSlot.

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

    Throws

    This function can throw errors.