package game.renderer.entity; import game.entity.Entity; import game.item.Item; import game.item.ItemStack; import game.renderer.GlState; import game.renderer.blockmodel.Transforms; import game.renderer.texture.TextureMap; import game.window.WCF; public class RenderItemEntity extends Render { protected final Item item; private final RenderItem itemRenderer; public RenderItemEntity(RenderManager renderManagerIn, Item itemIn, RenderItem renderItemIn) { super(renderManagerIn); this.item = itemIn; this.itemRenderer = renderItemIn; } public void doRender(T entity, double x, double y, double z, float partialTicks) { WCF.glPushMatrix(); WCF.glTranslatef((float)x, (float)y, (float)z); GlState.enableRescaleNormal(); WCF.glScalef(0.5F, 0.5F, 0.5F); WCF.glRotatef(-this.renderManager.playerViewY, 0.0F, 1.0F, 0.0F); WCF.glRotatef(this.renderManager.playerViewX, 1.0F, 0.0F, 0.0F); this.bindTexture(TextureMap.locationBlocksTexture); this.itemRenderer.renderItem(this.getStack(entity), Transforms.Camera.GROUND); GlState.disableRescaleNormal(); WCF.glPopMatrix(); super.doRender(entity, x, y, z, partialTicks); } public ItemStack getStack(T entityIn) { return new ItemStack(this.item, 1, 0); } protected String getEntityTexture(Entity entity) { return TextureMap.locationBlocksTexture; } }