Now passing the slot to the getItemStack method of a GUI element
This commit is contained in:
@@ -116,10 +116,10 @@ class InventoryGUIShared<T : ForInventory>(
|
|||||||
if (invSlot != null) {
|
if (invSlot != null) {
|
||||||
val offsetSlot = invSlot.add(offsetHorizontally, offsetVertically).realSlotIn(dimensions)
|
val offsetSlot = invSlot.add(offsetHorizontally, offsetVertically).realSlotIn(dimensions)
|
||||||
if (offsetSlot != null)
|
if (offsetSlot != null)
|
||||||
bukkitInventory.setItem(offsetSlot, slot.getItemStack(this))
|
bukkitInventory.setItem(offsetSlot, slot.getItemStack(this, offsetSlot))
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
bukkitInventory.setItem(it.key, slot.getItemStack(this))
|
bukkitInventory.setItem(it.key, slot.getItemStack(this, it.key))
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -10,7 +10,7 @@ abstract class InventoryGUISlot<T : ForInventory> {
|
|||||||
|
|
||||||
abstract class InventoryGUIElement<T : ForInventory> : InventoryGUISlot<T>() {
|
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>) {
|
final override fun onClick(clickEvent: InventoryGUIClickEvent<T>) {
|
||||||
clickEvent.gui.data.generalOnClick?.invoke(clickEvent)
|
clickEvent.gui.data.generalOnClick?.invoke(clickEvent)
|
||||||
|
@@ -8,7 +8,7 @@ open class InventoryGUIButton<T : ForInventory>(
|
|||||||
val action: (InventoryGUIClickEvent<T>) -> Unit,
|
val action: (InventoryGUIClickEvent<T>) -> Unit,
|
||||||
) : InventoryGUIElement<T>() {
|
) : InventoryGUIElement<T>() {
|
||||||
|
|
||||||
override fun getItemStack(gui: InventoryGUI<*>) = icon
|
override fun getItemStack(gui: InventoryGUI<*>, slot: Int) = icon
|
||||||
|
|
||||||
override fun onClickElement(clickEvent: InventoryGUIClickEvent<T>) {
|
override fun onClickElement(clickEvent: InventoryGUIClickEvent<T>) {
|
||||||
clickEvent.bukkitEvent.isCancelled = true
|
clickEvent.bukkitEvent.isCancelled = true
|
||||||
|
@@ -7,7 +7,7 @@ class InventoryGUIPlaceholder<T : ForInventory>(
|
|||||||
private val icon: ItemStack
|
private val icon: ItemStack
|
||||||
) : InventoryGUIElement<T>() {
|
) : InventoryGUIElement<T>() {
|
||||||
|
|
||||||
override fun getItemStack(gui: InventoryGUI<*>) = icon
|
override fun getItemStack(gui: InventoryGUI<*>, slot: Int) = icon
|
||||||
|
|
||||||
override fun onClickElement(clickEvent: InventoryGUIClickEvent<T>) {
|
override fun onClickElement(clickEvent: InventoryGUIClickEvent<T>) {
|
||||||
clickEvent.bukkitEvent.isCancelled = true
|
clickEvent.bukkitEvent.isCancelled = true
|
||||||
|
Reference in New Issue
Block a user