From 35921a3a4b7170fb64d9516cad51da9b0120efc8 Mon Sep 17 00:00:00 2001 From: DBotThePony Date: Sat, 14 Jan 2023 14:32:39 +0700 Subject: [PATCH] Use canreceive/extract --- .../mc/otm/menu/ChemicalGeneratorMenu.kt | 15 ++++++++++----- .../ru/dbotthepony/mc/otm/menu/EnergyServoMenu.kt | 8 ++++---- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/menu/ChemicalGeneratorMenu.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/menu/ChemicalGeneratorMenu.kt index 11dbdd27a..fb629b5fa 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/menu/ChemicalGeneratorMenu.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/menu/ChemicalGeneratorMenu.kt @@ -6,6 +6,7 @@ import net.minecraft.world.item.ItemStack import net.minecraftforge.common.ForgeHooks import net.minecraftforge.common.capabilities.ForgeCapabilities import ru.dbotthepony.mc.otm.block.entity.ChemicalGeneratorBlockEntity +import ru.dbotthepony.mc.otm.core.ifPresentK import ru.dbotthepony.mc.otm.menu.widget.LevelGaugeWidget import ru.dbotthepony.mc.otm.menu.widget.ProgressGaugeWidget import ru.dbotthepony.mc.otm.registry.MMenus @@ -16,20 +17,24 @@ class ChemicalGeneratorMenu @JvmOverloads constructor(id: Int, inv: Inventory, t val container = tile?.container ?: SimpleContainer(3) val fuelSlot = object : MatterySlot(container, ChemicalGeneratorBlockEntity.SLOT_INPUT) { - override fun mayPlace(p_40231_: ItemStack): Boolean { - return ForgeHooks.getBurnTime(p_40231_, null) > 0 + override fun mayPlace(itemStack: ItemStack): Boolean { + return ForgeHooks.getBurnTime(itemStack, null) > 0 } } val residueSlot = object : MatterySlot(container, ChemicalGeneratorBlockEntity.SLOT_RESIDUE) { - override fun mayPlace(p_40231_: ItemStack): Boolean { + override fun mayPlace(itemStack: ItemStack): Boolean { return false } } val batterySlot = object : MatterySlot(container, ChemicalGeneratorBlockEntity.SLOT_BATTERY) { - override fun mayPlace(p_40231_: ItemStack): Boolean { - return p_40231_.getCapability(ForgeCapabilities.ENERGY).isPresent + override fun mayPlace(itemStack: ItemStack): Boolean { + itemStack.getCapability(ForgeCapabilities.ENERGY).ifPresentK { + return it.canReceive() + } + + return false } } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/menu/EnergyServoMenu.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/menu/EnergyServoMenu.kt index eb8e679a8..858247fa8 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/menu/EnergyServoMenu.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/menu/EnergyServoMenu.kt @@ -24,14 +24,14 @@ class EnergyServoMenu @JvmOverloads constructor( val container = tile?.container ?: SimpleContainer(2) dischargeSlot = object : MatterySlot(container, EnergyServoBlockEntity.SLOT_DISCHARGE) { - override fun mayPlace(p_40231_: ItemStack): Boolean { - return super.mayPlace(p_40231_) && (p_40231_.energy?.let { it.extractEnergy(Int.MAX_VALUE, true) > 0 } ?: false) + override fun mayPlace(itemStack: ItemStack): Boolean { + return super.mayPlace(itemStack) && (itemStack.energy?.canExtract() ?: false) } } chargeSlot = object : MatterySlot(container, EnergyServoBlockEntity.SLOT_CHARGE) { - override fun mayPlace(p_40231_: ItemStack): Boolean { - return super.mayPlace(p_40231_) && (p_40231_.energy?.let { it.receiveEnergy(Int.MAX_VALUE, true) > 0 } ?: false) + override fun mayPlace(itemStack: ItemStack): Boolean { + return super.mayPlace(itemStack) && (itemStack.energy?.canReceive() ?: false) } }