package openblocks.client.renderer.item; import net.minecraft.client.renderer.ItemRenderer; import net.minecraft.client.renderer.Tessellator; import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraftforge.client.IItemRenderer; import openblocks.common.entity.EntityHangGlider; import openmods.utils.TextureUtils; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; public class ItemRendererHangGlider implements IItemRenderer { @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return type == ItemRenderType.EQUIPPED || type == ItemRenderType.EQUIPPED_FIRST_PERSON; } @Override public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { return true; } @Override public void renderItem(ItemRenderType type, ItemStack stack, Object... data) { EntityLivingBase par1EntityLiving = (EntityLivingBase)data[1]; if (EntityHangGlider.isEntityHoldingGlider(par1EntityLiving)) return; IIcon icon = par1EntityLiving.getItemIcon(stack, 0); if (icon == null) return; if (stack.getItemSpriteNumber() == 0) TextureUtils.bindDefaultTerrainTexture(); else TextureUtils.bindDefaultItemsTexture(); Tessellator tessellator = Tessellator.instance; GL11.glEnable(GL12.GL_RESCALE_NORMAL); GL11.glTranslatef(-0.0F, -0.3F, 0.0F); GL11.glScalef(1.5F, 1.5F, 1.5F); GL11.glRotatef(50.0F, 0.0F, 1.0F, 0.0F); GL11.glRotatef(335.0F, 0.0F, 0.0F, 1.0F); GL11.glTranslatef(-0.9375F, -0.0625F, 0.0F); ItemRenderer.renderItemIn2D(tessellator, icon.getMaxU(), icon.getMinV(), icon.getMinU(), icon.getMaxV(), icon.getIconWidth(), icon.getIconHeight(), 0.0625F); } }