From 000b84e87eaedb94fb87ccb11e376c51f99a1d07 Mon Sep 17 00:00:00 2001 From: Uko Kokņevičs Date: Wed, 10 Jan 2024 17:41:07 +0100 Subject: Added Energy Condenser --- .../eris_alchemy/block/EnergyCondenserBlock.java | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 src/main/java/lv/enes/mc/eris_alchemy/block/EnergyCondenserBlock.java (limited to 'src/main/java/lv/enes/mc/eris_alchemy/block/EnergyCondenserBlock.java') diff --git a/src/main/java/lv/enes/mc/eris_alchemy/block/EnergyCondenserBlock.java b/src/main/java/lv/enes/mc/eris_alchemy/block/EnergyCondenserBlock.java new file mode 100644 index 0000000..86ac061 --- /dev/null +++ b/src/main/java/lv/enes/mc/eris_alchemy/block/EnergyCondenserBlock.java @@ -0,0 +1,56 @@ +package lv.enes.mc.eris_alchemy.block; + +import jakarta.annotation.Nonnull; +import jakarta.annotation.Nullable; +import lv.enes.mc.eris_alchemy.EMC; +import lv.enes.mc.eris_alchemy.EmcStorage; +import lv.enes.mc.eris_alchemy.ErisAlchemyRegistry; +import lv.enes.mc.eris_alchemy.block.entity.EnergyCondenserEntity; +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; + +import java.util.List; + +public class EnergyCondenserBlock extends ChestLikeBlock implements EmcStorage { + public static final Component CONTAINER_TITLE + = Component.translatable("container.eris_alchemy.energy_condenser"); + + public EnergyCondenserBlock(Properties properties) { + super(properties, () -> ErisAlchemyRegistry.BlockEntities.ENERGY_CONDENSER); + } + + @Override + public void appendHoverText( + ItemStack stack, + @Nullable BlockGetter world, + List tooltip, + TooltipFlag options + ) { + if (getStoredEmc(stack) >= 0.1) { + tooltip.add(Component.literal("Stored EMC: %s".formatted(EMC.formatEmc(getStoredEmc(stack))))); + } + } + + @Override + @Nonnull + protected Component getContainerTitle() { + return CONTAINER_TITLE; + } + + @Override + public double getStoredEmc(ItemStack stack, CompoundTag blockEntityData) { + return blockEntityData.getDouble("stored_emc"); + } + + @Nullable + @Override + public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { + return new EnergyCondenserEntity(pos, state); + } +} -- cgit v1.2.3