diff --git a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/menu/ExtendedInventory.kt b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/menu/ExtendedInventory.kt index b16e019a..0bdd97eb 100644 --- a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/menu/ExtendedInventory.kt +++ b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/menu/ExtendedInventory.kt @@ -1,6 +1,6 @@ package com.willfp.eco.internal.gui.menu -import com.willfp.eco.internal.gui.slot.EcoCaptivatorSlot +import com.willfp.eco.internal.gui.slot.EcoCaptiveSlot import com.willfp.eco.util.MenuUtils import com.willfp.eco.util.StringUtils import org.bukkit.NamespacedKey @@ -20,7 +20,7 @@ class ExtendedInventory( for (i in 0 until inventory.size) { val (row, column) = MenuUtils.convertSlotToRowColumn(i) val slot = menu.getSlot(row, column) - if (slot is EcoCaptivatorSlot) { + if (slot is EcoCaptiveSlot) { val defaultItem = slot.getItemStack(player) val item = inventory.getItem(i) ?: continue if (item != defaultItem) { diff --git a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoCaptivatorSlot.kt b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoCaptivatorSlot.kt deleted file mode 100644 index e766025a..00000000 --- a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoCaptivatorSlot.kt +++ /dev/null @@ -1,28 +0,0 @@ -package com.willfp.eco.internal.gui.slot - -import com.willfp.eco.core.Eco -import com.willfp.eco.core.gui.slot.functional.SlotHandler -import org.bukkit.Material -import org.bukkit.inventory.ItemStack - -class EcoCaptivatorSlot : EcoSlot( - { _, _ -> ItemStack(Material.AIR) }, - allowMovingItem, - allowMovingItem, - allowMovingItem, - allowMovingItem, - allowMovingItem, - { _, _, _ -> } -) { - companion object { - val plugin = Eco.getHandler().ecoPlugin - - val allowMovingItem = SlotHandler { event, _, _ -> - event.isCancelled = false - } - } - - override fun isCaptive(): Boolean { - return true - } -} \ No newline at end of file diff --git a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoCaptiveSlot.kt b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoCaptiveSlot.kt new file mode 100644 index 00000000..ba776540 --- /dev/null +++ b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoCaptiveSlot.kt @@ -0,0 +1,24 @@ +package com.willfp.eco.internal.gui.slot + +import com.willfp.eco.core.gui.slot.functional.SlotHandler +import com.willfp.eco.core.gui.slot.functional.SlotProvider + +class EcoCaptiveSlot( + provider: SlotProvider +) : EcoSlot( + provider, + allowMovingItem, + allowMovingItem, + allowMovingItem, + allowMovingItem, + allowMovingItem, + { _, _, _ -> } +) { + override fun isCaptive(): Boolean { + return true + } +} + +private val allowMovingItem = SlotHandler { event, _, _ -> + event.isCancelled = false +} \ No newline at end of file diff --git a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlot.kt b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlot.kt index 5025eaef..fd2a005f 100644 --- a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlot.kt +++ b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlot.kt @@ -31,8 +31,7 @@ open class EcoSlot( ClickType.SHIFT_LEFT -> this.onShiftLeftClick.handle(event, this, menu) ClickType.SHIFT_RIGHT -> this.onShiftRightClick.handle(event, this, menu) ClickType.MIDDLE -> this.onMiddleClick.handle(event, this, menu) - else -> { - } + else -> {} } } diff --git a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlotBuilder.kt b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlotBuilder.kt index a27c53f5..f5482e10 100644 --- a/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlotBuilder.kt +++ b/eco-core/core-backend/src/main/kotlin/com/willfp/eco/internal/gui/slot/EcoSlotBuilder.kt @@ -58,7 +58,7 @@ class EcoSlotBuilder(private val provider: SlotProvider) : SlotBuilder { override fun build(): Slot { return if (captive) { - EcoCaptivatorSlot() + EcoCaptiveSlot(provider) } else { EcoSlot(provider, onLeftClick, onRightClick, onShiftLeftClick, onShiftRightClick, onMiddleClick, modifier) }