From 1967b2869a72f27eb9ae0ea2583592341030ec9d Mon Sep 17 00:00:00 2001 From: DBotThePony Date: Mon, 15 May 2023 08:10:06 +0700 Subject: [PATCH] Update fluid handler conditions --- .../entity/decorative/FluidTankBlockEntity.kt | 12 ++--------- .../mc/otm/container/HandlerFilter.kt | 20 ++----------------- 2 files changed, 4 insertions(+), 28 deletions(-) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/FluidTankBlockEntity.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/FluidTankBlockEntity.kt index 5b6bd1f3f..eaff686e9 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/FluidTankBlockEntity.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/FluidTankBlockEntity.kt @@ -42,18 +42,10 @@ class FluidTankBlockEntity(blockPos: BlockPos, blockState: BlockState) : Mattery fillInput.handler(object : HandlerFilter { override fun canInsert(slot: Int, stack: ItemStack): Boolean { if (fluid.isEmpty) { - stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).ifPresentK { - return it.tanks > 0 - } - - return false + return stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).map { it.tanks > 0 }.orElse(false) } - stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).ifPresentK { - return it.fill(fluid[0], IFluidHandler.FluidAction.SIMULATE) > 0 - } - - return false + return stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).map { it.fill(fluid[0], IFluidHandler.FluidAction.SIMULATE) > 0 }.orElse(false) } override fun canExtract(slot: Int, amount: Int, stack: ItemStack): Boolean { diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/container/HandlerFilter.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/container/HandlerFilter.kt index 4d62d09c8..c36c8af12 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/container/HandlerFilter.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/container/HandlerFilter.kt @@ -42,29 +42,13 @@ interface HandlerFilter { object FluidContainers : HandlerFilter { override fun canInsert(slot: Int, stack: ItemStack): Boolean { - stack.getCapability(ForgeCapabilities.FLUID_HANDLER).ifPresentK { - return it.tanks > 0 - } - - stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).ifPresentK { - return it.tanks > 0 - } - - return false + return stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).map { it.tanks > 0 }.orElse(false) } } object DrainableFluidContainers : HandlerFilter { override fun canInsert(slot: Int, stack: ItemStack): Boolean { - stack.getCapability(ForgeCapabilities.FLUID_HANDLER).ifPresentK { - return it.stream().anyMatch { it.isNotEmpty } - } - - stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).ifPresentK { - return it.stream().anyMatch { it.isNotEmpty } - } - - return false + return stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM).map { it.stream().anyMatch { it.isNotEmpty } }.orElse(false) } override fun canExtract(slot: Int, amount: Int, stack: ItemStack): Boolean {