KtInventoryPaginatedLazyFetchedAdventure

Abstract class for lazy fetched inventories with Adventure Component titles.

Since

2.2.0

Parameters

context

Plugin context

line

Number of inventory rows

Type Parameters

C

Type of the display condition

D

Type of the fetched data

Constructors

Link copied to clipboard
constructor(context: KtInventoryPluginContext.LazyFetchable, line: Int)

Types

Link copied to clipboard

Represents a single page entry in the lazy fetched inventory.

Link copied to clipboard

Abstract class for refreshable lazy-fetched Adventure inventories.

Properties

Link copied to clipboard

Map of all buttons in the inventory

Link copied to clipboard
abstract val initialCondition: C

Initial display condition used by open.

Link copied to clipboard
val line: Int

Number of rows in the inventory (must be between 1 and 6)

Link copied to clipboard
val size: Int

Total size of inventory (line * 9)

Functions

Link copied to clipboard
override fun button(slot: Int, item: KtInventoryButton<KtInventoryBase>)

Adds an existing button to a single slot

fun button(vararg slot: Int, item: KtInventoryButton<KtInventoryBase>)

Adds an existing button to multiple slots

fun button(slot: Int, itemStack: ItemStack, onClick: (KtInventoryButton.ClickEvent<AbstractKtInventory>) -> Unit = {})

Adds a button to a single slot with the given item and click handler

fun button(slots: Iterable<Int>, itemStack: ItemStack, onClick: (KtInventoryButton.ClickEvent<AbstractKtInventory>) -> Unit = {})
fun button(vararg slot: Int, itemStack: ItemStack, onClick: (KtInventoryButton.ClickEvent<AbstractKtInventory>) -> Unit = {})

Adds a button to multiple slots with the given item and click handler

Link copied to clipboard
open fun onClick(event: InventoryClickEvent)

Called when top inventory is clicked

Link copied to clipboard
open fun onClickBottom(event: InventoryClickEvent)

Called when bottom inventory is clicked

Link copied to clipboard
open fun onClose(event: InventoryCloseEvent)

Called when inventory is closed

Link copied to clipboard
open fun onDrag(event: InventoryDragEvent)

Called when items are dragged in inventory

Link copied to clipboard
open fun onOpen(event: InventoryOpenEvent)

Called when inventory is opened

Link copied to clipboard
override fun open(player: HumanEntity)

Opens this inventory for the given player

fun open(player: HumanEntity, condition: C)

Opens the inventory immediately and populates entries after fetching data asynchronously.

Link copied to clipboard
fun paginateSlot(vararg slots: Int)

Sets slots to be used for pagination.

Link copied to clipboard

Adds a storable that is applied to each created condition entry.

Link copied to clipboard
abstract fun title(condition: C): Component

Generates the title for a specific display condition.