From 1050ccb5fcaed316c3ddb2c0c8618e2ef62241db Mon Sep 17 00:00:00 2001 From: DBotThePony Date: Sun, 2 Oct 2022 22:45:54 +0700 Subject: [PATCH] Battery now have charged variant in creative menu --- .../ru/dbotthepony/mc/otm/item/BatteryItem.kt | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/item/BatteryItem.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/item/BatteryItem.kt index 08ecbb616..c5e88f37f 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/item/BatteryItem.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/item/BatteryItem.kt @@ -1,6 +1,7 @@ package ru.dbotthepony.mc.otm.item import net.minecraft.ChatFormatting +import net.minecraft.core.NonNullList import net.minecraft.nbt.CompoundTag import net.minecraft.network.chat.Component import net.minecraft.server.level.ServerPlayer @@ -41,6 +42,10 @@ open class BatteryItem : Item { return if (isCreative) ImpreciseFraction.LONG_MAX_VALUE else super.missingPower } + fun maxPower() { + batteryLevel = maxBatteryLevel + } + override var batteryLevel: ImpreciseFraction get() { return if (isCreative) ImpreciseFraction.LONG_MAX_VALUE else super.batteryLevel } set(value) { super.batteryLevel = value } @@ -141,6 +146,20 @@ open class BatteryItem : Item { } } + override fun fillItemCategory(p_41391_: CreativeModeTab, p_41392_: NonNullList) { + super.fillItemCategory(p_41391_, p_41392_) + + if (allowedIn(p_41391_)) { + p_41392_.add(ItemStack(this).also { + it.matteryEnergy?.let { + if (it is Power) { + it.maxPower() + } + } + }) + } + } + override fun initCapabilities(stack: ItemStack, nbt: CompoundTag?): ICapabilityProvider { return Power(stack) } @@ -153,10 +172,10 @@ open class BatteryItem : Item { class CrudeBatteryItem : BatteryItem(ServerConfig.BATTERY_CRUDE) { override fun appendHoverText( - stack: ItemStack, - p_41422_: Level?, - p_41423_: MutableList, - p_41424_: TooltipFlag + stack: ItemStack, + p_41422_: Level?, + p_41423_: MutableList, + p_41424_: TooltipFlag ) { super.appendHoverText(stack, p_41422_, p_41423_, p_41424_)