Guest User

Untitled

a guest
Dec 13th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.70 KB | None | 0 0
  1. package techcraft.client;
  2.  
  3. import org.lwjgl.opengl.GL11;
  4. import org.lwjgl.opengl.GL12;
  5. import cpw.mods.fml.client.FMLClientHandler;
  6. import cpw.mods.fml.client.registry.ClientRegistry;
  7. import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
  8. import cpw.mods.fml.client.registry.RenderingRegistry;
  9. import net.minecraft.src.Block;
  10. import net.minecraft.src.IBlockAccess;
  11. import net.minecraft.src.RenderBlocks;
  12. import net.minecraft.src.TileEntity;
  13. import net.minecraft.src.TileEntityRenderer;
  14. import net.minecraft.src.World;
  15. import net.minecraftforge.client.MinecraftForgeClient;
  16. import techcraft.CommonProxy;
  17. import techcraft.TechCraft;
  18. import techcraft.TileEntityComputer;
  19. import techcraft.TileEntityMetalForge;
  20.  
  21. public class ClientProxy extends CommonProxy implements ISimpleBlockRenderingHandler {
  22.  
  23. public static int renderIdMachine;
  24. private TileEntityComputer tec = new TileEntityComputer(0);
  25. private TileEntityMetalForge temf = new TileEntityMetalForge(0);
  26.  
  27. @Override
  28. public void initTileEntities() {
  29. super.initTileEntities();
  30. ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMetalForge.class, new RendererMetalForge());
  31. ClientRegistry.bindTileEntitySpecialRenderer(TileEntityComputer.class, new RendererComputer());
  32. }
  33.  
  34. @Override
  35. public void initRendering() {
  36. renderIdMachine = RenderingRegistry.getNextAvailableRenderId();
  37. RenderingRegistry.registerBlockHandler(renderIdMachine, this);
  38. MinecraftForgeClient.preloadTexture("/techcraft/gfx/blocks.png");
  39. MinecraftForgeClient.preloadTexture("/techcraft/gfx/items.png");
  40. MinecraftForgeClient.preloadTexture("/techcraft/gfx/computer.png");
  41. MinecraftForgeClient.preloadTexture("/techcraft/gfx/metalforge.png");
  42. MinecraftForgeClient.preloadTexture("/techcraft/gfx/guicomputer.png");
  43. MinecraftForgeClient.preloadTexture("/techcraft/gfx/guimetalforge.png");
  44. }
  45.  
  46. @Override
  47. public void renderInventoryBlock(Block block, int metadata, int modelID, RenderBlocks renderer) {
  48. GL11.glRotatef(-90.0F, 0.0F, 1.0F, 0.0F);
  49. GL11.glTranslatef(-0.5F, -0.5F, -0.5F);
  50. TileEntity te = null;
  51. switch(metadata) {
  52. case 0:
  53. te = tec;
  54. break;
  55. case 1:
  56. te = temf;
  57. break;
  58. }
  59. TileEntityRenderer.instance.renderTileEntityAt(te, 0, 0, 0, 0);
  60. GL11.glEnable(GL12.GL_RESCALE_NORMAL);
  61. }
  62.  
  63. @Override
  64. public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) {
  65. return true;
  66. }
  67.  
  68. @Override
  69. public boolean shouldRender3DInInventory() {
  70. return true;
  71. }
  72.  
  73. @Override
  74. public int getRenderId() {
  75. return renderIdMachine;
  76. }
  77.  
  78. @Override
  79. public World getClientWorld() {
  80. return FMLClientHandler.instance().getClient().theWorld;
  81. }
  82. }
Add Comment
Please, Sign In to add comment