package net.minecraft.client.renderer.entity.layers; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.model.ShulkerModel; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.entity.LivingEntityRenderer; import net.minecraft.client.renderer.entity.RenderLayerParent; import net.minecraft.client.renderer.entity.ShulkerRenderer; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.monster.Shulker; @Environment(EnvType.CLIENT) public class ShulkerHeadLayer extends RenderLayer> { public ShulkerHeadLayer(RenderLayerParent> renderer) { super(renderer); } public void render( PoseStack poseStack, MultiBufferSource buffer, int packedLight, Shulker livingEntity, float limbSwing, float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch ) { ResourceLocation resourceLocation = ShulkerRenderer.getTextureLocation(livingEntity.getColor()); VertexConsumer vertexConsumer = buffer.getBuffer(RenderType.entitySolid(resourceLocation)); this.getParentModel().getHead().render(poseStack, vertexConsumer, packedLight, LivingEntityRenderer.getOverlayCoords(livingEntity, 0.0F)); } }