Inspired by 2020's April Fools' 20w14infinite Snapshot, this mod brings endless randomly generated dimensions into Minecraft.
1package net.lerariemann.infinity.entity.client;
2
3import com.mojang.blaze3d.vertex.PoseStack;
4import net.lerariemann.infinity.entity.custom.AntEntity;
5import net.lerariemann.infinity.util.InfinityMethods;
6import net.minecraft.client.model.EntityModel;
7import net.minecraft.client.renderer.MultiBufferSource;
8//? if >1.21.9 {
9/*import net.minecraft.client.renderer.SubmitNodeCollector;
10import net.minecraft.client.renderer.state.CameraRenderState;
11*///?}
12import net.minecraft.client.renderer.entity.EntityRendererProvider;
13import net.minecraft.client.renderer.entity.MobRenderer;
14import net.minecraft.resources.ResourceLocation;
15import org.jetbrains.annotations.NotNull;
16
17public class AntRenderer
18 //? if >1.21.4 {
19 extends MobRenderer<AntEntity, AntEntityRenderState, AntModel>
20 //?} else {
21 /*extends MobRenderer<AntEntity, AntModel>
22 *///?}
23 {
24 private static final ResourceLocation TEXTURE = InfinityMethods.getId("textures/entity/ant.png");
25
26 public AntRenderer(EntityRendererProvider.Context context) {
27 super(context, new AntModel(context.bakeLayer(AntModel.MODEL_LAYER)), 0.6f);
28 }
29
30 //? if >1.21.2 {
31 @Override
32 public AntEntityRenderState createRenderState() {
33 return new AntEntityRenderState();
34 }
35 @Override
36 public @NotNull ResourceLocation getTextureLocation(AntEntityRenderState entity) {
37 return TEXTURE;
38 }
39
40 //? if >1.21.9 {
41 /*@Override
42 public void submit(AntEntityRenderState ant, PoseStack matrixStack, SubmitNodeCollector submitNodeCollector, CameraRenderState cameraRenderState) {
43 if(ant.isBaby) {
44 matrixStack.scale(0.5f, 0.5f, 0.5f);
45 } else {
46 matrixStack.scale(1f, 1f, 1f);
47 }
48 super.submit(ant, matrixStack, submitNodeCollector, cameraRenderState);
49 }
50 *///?} else {
51 public void render(AntEntityRenderState mobEntity, PoseStack matrixStack,
52 MultiBufferSource vertexConsumerProvider, int i) {
53 if(mobEntity.isBaby) {
54 matrixStack.scale(0.5f, 0.5f, 0.5f);
55 } else {
56 matrixStack.scale(1f, 1f, 1f);
57 }
58
59 super.render(mobEntity, matrixStack, vertexConsumerProvider, i);
60 }
61 //?}
62 //?} else {
63 /*@Override
64 public ResourceLocation getTextureLocation(AntEntity renderState) {
65 return TEXTURE;
66 }
67
68 @Override
69 public void render(AntEntity mobEntity, float f, float g, PoseStack matrixStack,
70 MultiBufferSource vertexConsumerProvider, int i) {
71 if(mobEntity.isBaby()) {
72 matrixStack.scale(0.5f, 0.5f, 0.5f);
73 } else {
74 matrixStack.scale(1f, 1f, 1f);
75 }
76
77 super.render(mobEntity, f, g, matrixStack, vertexConsumerProvider, i);
78 }
79 *///?}
80}