Now passing the slot to the getItemStack method of a GUI element

This commit is contained in:
bluefireoly
2020-10-18 23:32:19 +02:00
parent b3abcadfab
commit d092708df2
4 changed files with 5 additions and 5 deletions

View File

@@ -116,10 +116,10 @@ class InventoryGUIShared<T : ForInventory>(
if (invSlot != null) {
val offsetSlot = invSlot.add(offsetHorizontally, offsetVertically).realSlotIn(dimensions)
if (offsetSlot != null)
bukkitInventory.setItem(offsetSlot, slot.getItemStack(this))
bukkitInventory.setItem(offsetSlot, slot.getItemStack(this, offsetSlot))
}
} else {
bukkitInventory.setItem(it.key, slot.getItemStack(this))
bukkitInventory.setItem(it.key, slot.getItemStack(this, it.key))
}
}

View File

@@ -10,7 +10,7 @@ abstract class InventoryGUISlot<T : ForInventory> {
abstract class InventoryGUIElement<T : ForInventory> : InventoryGUISlot<T>() {
abstract fun getItemStack(gui: InventoryGUI<*>): ItemStack
abstract fun getItemStack(gui: InventoryGUI<*>, slot: Int): ItemStack
final override fun onClick(clickEvent: InventoryGUIClickEvent<T>) {
clickEvent.gui.data.generalOnClick?.invoke(clickEvent)

View File

@@ -8,7 +8,7 @@ open class InventoryGUIButton<T : ForInventory>(
val action: (InventoryGUIClickEvent<T>) -> Unit,
) : InventoryGUIElement<T>() {
override fun getItemStack(gui: InventoryGUI<*>) = icon
override fun getItemStack(gui: InventoryGUI<*>, slot: Int) = icon
override fun onClickElement(clickEvent: InventoryGUIClickEvent<T>) {
clickEvent.bukkitEvent.isCancelled = true

View File

@@ -7,7 +7,7 @@ class InventoryGUIPlaceholder<T : ForInventory>(
private val icon: ItemStack
) : InventoryGUIElement<T>() {
override fun getItemStack(gui: InventoryGUI<*>) = icon
override fun getItemStack(gui: InventoryGUI<*>, slot: Int) = icon
override fun onClickElement(clickEvent: InventoryGUIClickEvent<T>) {
clickEvent.bukkitEvent.isCancelled = true