CommandItemProvider

class CommandItemProvider(val itemStack: ItemStack, val command: String) : AbstractItemProvider

An ItemProvider that executes a command when clicked. The command will be executed as if the player had typed it in chat, so it can include placeholders like %player% that will be replaced with the player's name.

Parameters

itemStack

The item to display in the GUI.

command

The command to execute when the item is clicked. This can include placeholders like

Constructors

Link copied to clipboard
constructor(itemStack: ItemStack, command: String)

Properties

Link copied to clipboard
Link copied to clipboard
val itemStack: ItemStack

Functions

Link copied to clipboard
open fun destroy()

Cleans up any resources or references when this item provider is removed from the GUI. Subclasses can override this method to perform any necessary cleanup, such as canceling tasks or clearing references.

Link copied to clipboard
open override fun getItem(): ItemStack

Returns the ItemStack to be displayed for this item provider. This method must be implemented by subclasses to provide the actual item to display.

Link copied to clipboard
open override fun onClick(clickEvent: InventoryClickEvent)

Handles click events for this item provider. This method must be implemented by subclasses to define the behavior when the item is clicked in the GUI.

Link copied to clipboard
fun refresh()

Refreshes the item in the GUI. This method can be called by subclasses to update the displayed item after changes. It checks if the GUI reference is initialized and if the inventory slot is valid before attempting to refresh.

Link copied to clipboard
fun setGuiData(gui: Gui, slot: Int)

Sets the GUI reference and inventory slot for this item provider. This should be called by the GUI when adding this item provider to it.