Guest User

Untitled

a guest
Sep 9th, 2014
445
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.14 KB | None | 0 0
  1. package com.morgrimm.osteomancy.client.renderer.item;
  2.  
  3. import com.morgrimm.osteomancy.item.ItemBonePile;
  4. import com.morgrimm.osteomancy.item.ItemWard;
  5. import com.morgrimm.osteomancy.utility.EntityListHelper;
  6. import com.morgrimm.osteomancy.utility.LogHelper;
  7. import com.morgrimm.osteomancy.utility.NBTHelper;
  8. import cpw.mods.fml.client.FMLClientHandler;
  9. import net.minecraft.client.Minecraft;
  10. import net.minecraft.client.renderer.Tessellator;
  11. import net.minecraft.client.renderer.texture.TextureMap;
  12. import net.minecraft.entity.EntityList;
  13. import net.minecraft.item.ItemStack;
  14. import net.minecraft.util.IIcon;
  15. import net.minecraftforge.client.IItemRenderer;
  16. import net.minecraftforge.client.MinecraftForgeClient;
  17. import org.lwjgl.opengl.GL11;
  18.  
  19. import java.awt.*;
  20. import java.lang.reflect.Field;
  21. import java.util.Map;
  22.  
  23. public class ItemRendererWard implements IItemRenderer{
  24. @Override
  25. public boolean handleRenderType(ItemStack item, ItemRenderType type) {
  26. return true;
  27. }
  28.  
  29. @Override
  30. public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) {
  31. return false;
  32. }
  33.  
  34. @Override
  35. public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
  36. Tessellator tess = Tessellator.instance;
  37.  
  38. GL11.glPushMatrix();
  39.  
  40. if (type == ItemRenderType.INVENTORY) {
  41. GL11.glDisable(GL11.GL_LIGHTING);
  42. GL11.glEnable(GL11.GL_BLEND);
  43.  
  44. IIcon bone = ItemWard.boneIcon;
  45. IIcon runes = ItemWard.runeIcon;
  46.  
  47. // Draw the bone
  48. tess.startDrawingQuads();
  49. tess.addVertexWithUV(0, 0, 0, bone.getMinU(), bone.getMinV());
  50. tess.addVertexWithUV(0, 16, 0, bone.getMinU(), bone.getMaxV());
  51. tess.addVertexWithUV(16, 16, 0, bone.getMaxU(), bone.getMaxV());
  52. tess.addVertexWithUV(16, 0, 0, bone.getMaxU(), bone.getMinV());
  53. tess.draw();
  54.  
  55. // Color and draw the runes etched into the bone
  56. EntityList.EntityEggInfo egg = (EntityList.EntityEggInfo) EntityList.entityEggs.get(EntityListHelper.getStringToIDMapping().get(NBTHelper.getString(item, "entity")));
  57.  
  58. Color c = new Color(egg.secondaryColor);
  59.  
  60. System.out.println("Red: " + c.getRed());
  61. System.out.println("Green: " + c.getGreen());
  62. System.out.println("Blue: " + c.getBlue());
  63.  
  64. GL11.glPushAttrib(GL11.GL_ENABLE_BIT);
  65. GL11.glEnable(GL11.GL_ALPHA_TEST);
  66. GL11.glColor3f(c.getRed() / 255, c.getGreen() / 255, c.getBlue() / 255);
  67. //GL11.glColor4f(0.5f,0.5f,1,0.5f);
  68.  
  69. tess.startDrawingQuads();
  70. tess.addVertexWithUV(0, 0, 0, runes.getMinU(), runes.getMinV());
  71. tess.addVertexWithUV(0, 16, 0, runes.getMinU(), runes.getMaxV());
  72. tess.addVertexWithUV(16, 16, 0, runes.getMaxU(), runes.getMaxV());
  73. tess.addVertexWithUV(16, 0, 0, runes.getMaxU(), runes.getMinV());
  74. tess.draw();
  75.  
  76. GL11.glPopAttrib();
  77.  
  78. GL11.glEnable(GL11.GL_LIGHTING);
  79. }
  80.  
  81. GL11.glPopMatrix();
  82. }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment