storable

fun storable(initialize: () -> List<ItemStack?> = { emptyList() }, onPreClick: (KtInventoryStorable.ClickEvent) -> KtInventoryStorable.EventResult = { KtInventoryStorable.EventResult.Allow }, onClick: (KtInventoryStorable.ClickEvent) -> Unit = {}, onPreDrag: (KtInventoryStorable.DragEvent) -> KtInventoryStorable.EventResult = { KtInventoryStorable.EventResult.Allow }, onDrag: (KtInventoryStorable.DragEvent) -> Unit = {}, save: (List<ItemStack?>) -> Unit = {})

Add a storable component using all slots in the inventory

Since

2.0.0

Parameters

initialize

Lambda to provide initial items

onPreClick

Handler called before click events

onClick

Handler for click events

onPreDrag

Handler called before drag events

onDrag

Handler for drag events

save

Handler to save storable state


fun storable(vararg slots: Int, initialize: () -> List<ItemStack?> = { emptyList() }, onPreClick: (KtInventoryStorable.ClickEvent) -> KtInventoryStorable.EventResult = { KtInventoryStorable.EventResult.Allow }, onClick: (KtInventoryStorable.ClickEvent) -> Unit = {}, onPreDrag: (KtInventoryStorable.DragEvent) -> KtInventoryStorable.EventResult = { KtInventoryStorable.EventResult.Allow }, onDrag: (KtInventoryStorable.DragEvent) -> Unit = {}, save: (List<ItemStack?>) -> Unit = {})

Add a storable component with the specified slot numbers

Since

2.0.0

Parameters

slots

The slot numbers to use

initialize

Lambda to provide initial items

onPreClick

Handler called before click events

onClick

Handler for click events

onPreDrag

Handler called before drag events

onDrag

Handler for drag events

save

Handler to save storable state


fun storable(slots: Iterable<Int>, initialize: () -> List<ItemStack?> = { emptyList() }, onPreClick: (KtInventoryStorable.ClickEvent) -> KtInventoryStorable.EventResult = { KtInventoryStorable.EventResult.Allow }, onClick: (KtInventoryStorable.ClickEvent) -> Unit = {}, onPreDrag: (KtInventoryStorable.DragEvent) -> KtInventoryStorable.EventResult = { KtInventoryStorable.EventResult.Allow }, onDrag: (KtInventoryStorable.DragEvent) -> Unit = {}, save: (List<ItemStack?>) -> Unit = {}): KtInventoryStorable

Add a storable component with the specified slot numbers

Return

The created storable component

Since

2.0.0

Parameters

slots

The slot numbers to use

initialize

Lambda to provide initial items

onPreClick

Handler called before click events

onClick

Handler for click events

onPreDrag

Handler called before drag events

onDrag

Handler for drag events

save

Handler to save storable state