summaryrefslogtreecommitdiff
path: root/src/main/java/lv/enes/mc/eris_alchemy/client/ErisAlchemyClient.java
diff options
context:
space:
mode:
authorGravatar Uko Kokņevičs2024-01-09 19:37:28 +0100
committerGravatar Uko Kokņevičs2024-01-09 19:37:28 +0100
commit4606c536a6260477870426234f748067240de3d1 (patch)
tree52ecd35ab0a51dd84bbebb675f5433a85166b132 /src/main/java/lv/enes/mc/eris_alchemy/client/ErisAlchemyClient.java
parentReplace ItemMixin.java with proper ItemTooltipCallback usage. (diff)
downloadmc-eris-alchemy-4606c536a6260477870426234f748067240de3d1.tar.gz
mc-eris-alchemy-4606c536a6260477870426234f748067240de3d1.tar.xz
mc-eris-alchemy-4606c536a6260477870426234f748067240de3d1.zip
Added Alchemical Chest.
Diffstat (limited to 'src/main/java/lv/enes/mc/eris_alchemy/client/ErisAlchemyClient.java')
-rw-r--r--src/main/java/lv/enes/mc/eris_alchemy/client/ErisAlchemyClient.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/main/java/lv/enes/mc/eris_alchemy/client/ErisAlchemyClient.java b/src/main/java/lv/enes/mc/eris_alchemy/client/ErisAlchemyClient.java
new file mode 100644
index 0000000..bb5de4f
--- /dev/null
+++ b/src/main/java/lv/enes/mc/eris_alchemy/client/ErisAlchemyClient.java
@@ -0,0 +1,41 @@
1package lv.enes.mc.eris_alchemy.client;
2
3import lv.enes.mc.eris_alchemy.EMC;
4import lv.enes.mc.eris_alchemy.ErisAlchemyItems;
5import lv.enes.mc.eris_alchemy.block.ErisAlchemyBlocks;
6import lv.enes.mc.eris_alchemy.block.entity.AlchemicalChestBlockEntity;
7import lv.enes.mc.eris_alchemy.block.entity.ErisAlchemyBlockEntities;
8import lv.enes.mc.eris_alchemy.menu.ErisAlchemyMenus;
9import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry;
10import net.minecraft.client.gui.screens.MenuScreens;
11import net.minecraft.client.renderer.blockentity.BlockEntityRenderers;
12import net.minecraft.client.renderer.blockentity.ChestRenderer;
13import net.minecraft.network.chat.Component;
14import org.quiltmc.loader.api.ModContainer;
15import org.quiltmc.qsl.base.api.entrypoint.client.ClientModInitializer;
16import org.quiltmc.qsl.tooltip.api.client.ItemTooltipCallback;
17
18import java.text.DecimalFormat;
19
20@SuppressWarnings("unused")
21public class ErisAlchemyClient implements ClientModInitializer {
22 @Override
23 public void onInitializeClient(ModContainer mod) {
24 BlockEntityRenderers.register(ErisAlchemyBlockEntities.ALCHEMICAL_CHEST, ChestRenderer::new);
25
26 BuiltinItemRendererRegistry.INSTANCE.register(
27 ErisAlchemyItems.ALCHEMICAL_CHEST,
28 new ChestItemRenderer<>(ErisAlchemyBlocks.ALCHEMICAL_CHEST, AlchemicalChestBlockEntity::new)::renderByItem
29 );
30
31 MenuScreens.register(ErisAlchemyMenus.ALCHEMICAL_CHEST, AlchemicalChestScreen::new);
32
33 var doubleFormat = new DecimalFormat("0");
34 doubleFormat.setMaximumFractionDigits(1);
35 ItemTooltipCallback.EVENT.register((stack, player, context, tooltip) -> {
36 var world = player == null ? null : player.level();
37 var emc = EMC.getInstance(world).get(stack.getItem());
38 emc.ifPresent(value -> tooltip.add(Component.literal("EMC %s".formatted(doubleFormat.format(value)))));
39 });
40 }
41}