Interface Equippable

All Superinterfaces:
BuildableDataComponent<Equippable,Equippable.Builder>

Holds the equippable properties of an item.
See Also:
  • Method Details

    • equippable

      @Contract(value="_ -> new", pure=true) static Equippable.Builder equippable(EquipmentSlot slot)
      Creates a new Equippable.Builder instance.
      Parameters:
      slot - The slot for the new equippable to be equippable in.
      Returns:
      a new builder
    • slot

      Gets the equipment slot this item can be equipped in.
      Returns:
      the equipment slot
    • equipSound

      @Contract(pure=true) Key equipSound()
      Gets the equip sound key.
      Returns:
      the equip sound key
    • assetId

      @Contract(pure=true) @Nullable Key assetId()
      Gets the asset id if present.
      Returns:
      the asset id or null
    • cameraOverlay

      @Contract(pure=true) @Nullable Key cameraOverlay()
      Gets the camera overlay key if present.
      Returns:
      the camera overlay key or null
    • allowedEntities

      Gets the set of allowed entities that can equip this item. May be null if all entities are allowed.
      Returns:
      the set of allowed entities
    • dispensable

      @Contract(pure=true) boolean dispensable()
      Checks if the item is dispensable.
      Returns:
      true if dispensable, false otherwise
    • swappable

      @Contract(pure=true) boolean swappable()
      Checks if the item is swappable.
      Returns:
      true if swappable, false otherwise
    • damageOnHurt

      @Contract(pure=true) boolean damageOnHurt()
      Checks if the item takes damage when the wearer is hurt.
      Returns:
      true if it damages on hurt, false otherwise