summaryrefslogtreecommitdiff
path: root/src/main/java/lv/enes/mc/eris_alchemy/client/ChestItemRenderer.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/lv/enes/mc/eris_alchemy/client/ChestItemRenderer.java')
-rw-r--r--src/main/java/lv/enes/mc/eris_alchemy/client/ChestItemRenderer.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/main/java/lv/enes/mc/eris_alchemy/client/ChestItemRenderer.java b/src/main/java/lv/enes/mc/eris_alchemy/client/ChestItemRenderer.java
new file mode 100644
index 0000000..d49cc28
--- /dev/null
+++ b/src/main/java/lv/enes/mc/eris_alchemy/client/ChestItemRenderer.java
@@ -0,0 +1,40 @@
1package lv.enes.mc.eris_alchemy.client;
2
3import com.mojang.blaze3d.vertex.PoseStack;
4import net.minecraft.client.Minecraft;
5import net.minecraft.client.renderer.BlockEntityWithoutLevelRenderer;
6import net.minecraft.client.renderer.MultiBufferSource;
7import net.minecraft.core.BlockPos;
8import net.minecraft.world.item.ItemDisplayContext;
9import net.minecraft.world.item.ItemStack;
10import net.minecraft.world.level.block.AbstractChestBlock;
11import net.minecraft.world.level.block.entity.BaseContainerBlockEntity;
12import net.minecraft.world.level.block.state.BlockState;
13
14import java.util.function.BiFunction;
15
16public class ChestItemRenderer<T extends BaseContainerBlockEntity> extends BlockEntityWithoutLevelRenderer {
17 private final T chest;
18
19 public ChestItemRenderer(
20 AbstractChestBlock<T> block,
21 BiFunction<? super BlockPos, ? super BlockState, ? extends T> creator
22 ) {
23 super(Minecraft.getInstance().getBlockEntityRenderDispatcher(), Minecraft.getInstance().getEntityModels());
24 chest = creator.apply(BlockPos.ZERO, block.defaultBlockState());
25 }
26
27 @Override
28 public void renderByItem(
29 ItemStack stack,
30 ItemDisplayContext transformationMode,
31 PoseStack matrices,
32 MultiBufferSource vertexConsumers,
33 int light,
34 int overlay
35 ) {
36 Minecraft.getInstance()
37 .getBlockEntityRenderDispatcher()
38 .renderItem(chest, matrices, vertexConsumers, light, overlay);
39 }
40}