ScopedItemMeta

An item meta subtype that changes all of the returns of functions in item meta to a generic type to avoid all subtypes having to override all of the functions.

Inheritors

Functions

Link copied to clipboard
abstract fun hasFlag(flag: ItemFlag): Boolean

Checks whether the item has the given item flag.

Link copied to clipboard
@Contract(value = "-> new", pure = true)
abstract fun toBuilder(): B

Converts this object to a builder with all of the properties of this object set by default.

Link copied to clipboard
@Contract(value = "_ -> new", pure = true)
open fun with(builder: Consumer<B>): I
@Contract(value = "_ -> new", pure = true)
open fun with(builder: B.() -> Unit): I

Creates new item metadata from the result of applying the given builder.

Link copied to clipboard
abstract override fun withAttributeModifier(modifier: ItemAttributeModifier): I

Creates new item metadata with the given modifier added to the list of modifiers for this item.

Link copied to clipboard
abstract override fun withAttributeModifiers(modifiers: Collection<ItemAttributeModifier>): I

Creates new item metadata with the given attribute modifiers.

Link copied to clipboard
abstract override fun withCanDestroy(blocks: Collection<Block>): I

Creates new item metadata with the given can destroy blocks.

Link copied to clipboard
abstract override fun withCanPlaceOn(blocks: Collection<Block>): I

Creates new item metadata with the given can destroy blocks.

Link copied to clipboard
abstract override fun withCustomModelData(data: Int): I

Creates new item metadata with the given custom model data.

Link copied to clipboard
abstract override fun withDamage(damage: Int): I

Creates new item metadata with the given damage.

Link copied to clipboard
abstract override fun withHideFlag(flag: ItemFlag): I

Creates new item metadata with the given hide flag set.

Link copied to clipboard
abstract override fun withHideFlags(flags: Int): I

Creates new item metadata with the given hide flags.

Link copied to clipboard
abstract override fun withLore(lore: List<Component>): I

Creates new item metadata with the given lore.

abstract override fun withLore(lore: Component): I

Creates new item metadata with the given lore line added to the bottom of the lore text.

Link copied to clipboard
abstract override fun withName(name: Component?): I

Creates new item metadata with the given name.

Link copied to clipboard
abstract override fun withoutAttributeModifier(modifier: ItemAttributeModifier): I

Creates new item metadata with the given modifier removed from the list of modifiers for this item.

Link copied to clipboard
abstract override fun withoutAttributeModifiers(): I

Creates new item metadata without any modifiers.

Link copied to clipboard
abstract override fun withoutHideFlag(flag: ItemFlag): I

Creates new item metadata without the given hide flag set.

Link copied to clipboard
abstract override fun withoutLore(index: Int): I

Creates new item metadata with the lore line at the given index removed from the lore.

abstract override fun withoutLore(lore: Component): I

Creates new item metadata with the given lore line removed from the lore.

Link copied to clipboard
abstract override fun withUnbreakable(unbreakable: Boolean): I

Creates new item metadata with the given unbreakable setting.

Properties

Link copied to clipboard
@get:JvmName(name = "attributeModifiers")
abstract val attributeModifiers: @Unmodifiable List<ItemAttributeModifier>

All of the attribute modifiers that will be applied to entities holding items with this metadata.

Link copied to clipboard
@get:JvmName(name = "canDestroy")
abstract val canDestroy: @Unmodifiable Set<Block>

All of the blocks that the item can destroy.

Link copied to clipboard
@get:JvmName(name = "canPlaceOn")
abstract val canPlaceOn: @Unmodifiable Set<Block>

All of the blocks that the item can be placed on.

Link copied to clipboard
@get:JvmName(name = "customModelData")
abstract val customModelData: Int

The custom model data for the item.

Link copied to clipboard
@get:JvmName(name = "damage")
abstract val damage: Int

The current damage on the item.

Link copied to clipboard
@get:JvmName(name = "hideFlags")
abstract val hideFlags: Int

The flags that determine what is hidden for the item.

Link copied to clipboard
abstract val isUnbreakable: Boolean

If the item cannot be broken.

Link copied to clipboard
@get:JvmName(name = "lore")
abstract val lore: @Unmodifiable List<Component>

The lore of the item.

Link copied to clipboard
@get:JvmName(name = "name")
abstract val name: Component?

The display name of the item.