aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/client
diff options
context:
space:
mode:
authorkekzdealer <kekzdealer@gmail.com>2020-06-07 17:35:50 +0200
committerkekzdealer <kekzdealer@gmail.com>2020-06-07 17:35:50 +0200
commitc26c2895e7188c0d4cdeae0af104075efcc404f0 (patch)
tree393e3397b24ab481847892857b8ad1c50e7b7b68 /src/main/java/client
parent43770380ba9be1061322b38e40703cc1d9c6d3ed (diff)
downloadGT5-Unofficial-c26c2895e7188c0d4cdeae0af104075efcc404f0.tar.gz
GT5-Unofficial-c26c2895e7188c0d4cdeae0af104075efcc404f0.tar.bz2
GT5-Unofficial-c26c2895e7188c0d4cdeae0af104075efcc404f0.zip
implemented correct item rendering for new multi hatches
Diffstat (limited to 'src/main/java/client')
-rw-r--r--src/main/java/client/ClientProxy.java3
-rw-r--r--src/main/java/client/renderer/HatchRenderer.java77
2 files changed, 80 insertions, 0 deletions
diff --git a/src/main/java/client/ClientProxy.java b/src/main/java/client/ClientProxy.java
index e50639b878..c863198976 100644
--- a/src/main/java/client/ClientProxy.java
+++ b/src/main/java/client/ClientProxy.java
@@ -1,11 +1,13 @@
package client;
+import client.renderer.HatchRenderer;
import client.renderer.TESR_SECapacitor;
import client.renderer.TESR_SETether;
import common.CommonProxy;
import common.tileentities.TE_SpaceElevatorCapacitor;
import common.tileentities.TE_SpaceElevatorTether;
import cpw.mods.fml.client.registry.ClientRegistry;
+import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
@@ -24,6 +26,7 @@ public class ClientProxy extends CommonProxy {
super.init(e);
// Register Simple Block Renderers
//RenderingRegistry.registerBlockHandler(ConduitRenderer.getInstance());
+ RenderingRegistry.registerBlockHandler(HatchRenderer.getInstance());
}
}
diff --git a/src/main/java/client/renderer/HatchRenderer.java b/src/main/java/client/renderer/HatchRenderer.java
new file mode 100644
index 0000000000..0a764b3118
--- /dev/null
+++ b/src/main/java/client/renderer/HatchRenderer.java
@@ -0,0 +1,77 @@
+package client.renderer;
+
+import common.tileentities.TE_ItemProxyCable;
+import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler;
+import cpw.mods.fml.client.registry.RenderingRegistry;
+import net.minecraft.block.Block;
+import net.minecraft.client.renderer.RenderBlocks;
+import net.minecraft.client.renderer.Tessellator;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.world.IBlockAccess;
+import net.minecraftforge.common.util.ForgeDirection;
+import org.lwjgl.opengl.GL11;
+
+public class HatchRenderer implements ISimpleBlockRenderingHandler {
+
+ public static final int RID = RenderingRegistry.getNextAvailableRenderId();
+ private static final HatchRenderer INSTANCE = new HatchRenderer();
+
+ private HatchRenderer() {
+
+ }
+
+ public static HatchRenderer getInstance() {
+ return INSTANCE;
+ }
+
+ @Override
+ public void renderInventoryBlock(Block block, int meta, int modelId, RenderBlocks renderer) {
+ block.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F);
+ renderer.setRenderBoundsFromBlock(block);
+ final Tessellator t = Tessellator.instance;
+ GL11.glTranslatef(-0.5F, -0.5F, -0.5F);
+ t.startDrawingQuads();
+ t.setNormal(0.0F, -1.0F, 0.0F);
+ renderer.renderFaceYNeg(block, 0.0D, 0.0D, 0.0D, block.getIcon(0, meta));
+ t.draw();
+ t.startDrawingQuads();
+ t.setNormal(0.0F, 1.0F, 0.0F);
+ renderer.renderFaceYPos(block, 0.0D, 0.0D, 0.0D, block.getIcon(1, meta));
+ t.draw();
+ t.startDrawingQuads();
+ t.setNormal(1.0F, 0.0F, 0.0F);
+ renderer.renderFaceZNeg(block, 0.0D, 0.0D, 0.0D, block.getIcon(2, meta));
+ t.draw();
+ t.startDrawingQuads();
+ t.setNormal(-1.0F, 0.0F, 0.0F);
+ renderer.renderFaceZPos(block, 0.0D, 0.0D, 0.0D, block.getIcon(3, meta));
+ t.draw();
+ t.startDrawingQuads();
+ t.setNormal(0.0F, 0.0F, 1.0F);
+ renderer.renderFaceXNeg(block, 0.0D, 0.0D, 0.0D, block.getIcon(5, meta));
+ t.draw();
+ t.startDrawingQuads();
+ t.setNormal(0.0F, 0.0F, -1.0F);
+ renderer.renderFaceXPos(block, 0.0D, 0.0D, 0.0D, block.getIcon(6, meta));
+ t.draw();
+ GL11.glTranslatef(0.5F, 0.5F, 0.5F);
+ }
+
+ @Override
+ public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId,
+ RenderBlocks renderer) {
+
+
+ return false;
+ }
+
+ @Override
+ public boolean shouldRender3DInInventory(int modelId) {
+ return true;
+ }
+
+ @Override
+ public int getRenderId() {
+ return HatchRenderer.RID;
+ }
+}