From 05c78126859231a68e199dc34613689bd0978e2f Mon Sep 17 00:00:00 2001 From: Foghrye4 Date: Mon, 11 Apr 2016 19:44:54 +0300 Subject: Initial commit --- ihl/flexible_cable/NodeRender.java | 85 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 ihl/flexible_cable/NodeRender.java (limited to 'ihl/flexible_cable/NodeRender.java') diff --git a/ihl/flexible_cable/NodeRender.java b/ihl/flexible_cable/NodeRender.java new file mode 100644 index 0000000..61c272b --- /dev/null +++ b/ihl/flexible_cable/NodeRender.java @@ -0,0 +1,85 @@ +package ihl.flexible_cable; + +import ihl.IHLModInfo; +import ihl.model.IHLModelRenderer; +import ihl.model.ModelTube; +import ihl.utils.IHLMathUtils; +import ihl.utils.IHLRenderUtils; +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelBox; +import net.minecraft.client.renderer.ActiveRenderInfo; +import net.minecraft.client.renderer.RenderHelper; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.client.renderer.entity.Render; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.entity.Entity; +import net.minecraft.util.MathHelper; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.common.util.ForgeDirection; + +import org.lwjgl.opengl.GL11; + +public class NodeRender extends Render +{ + + private ModelTube model; + private ModelTube modelThin; + private ResourceLocation tex; + private float scale; + private boolean firstTick=true; + + public NodeRender() + { + super(); + scale = 1F/16F; + model=new ModelTube(null, 0, 0, -4F, -4F, -3F, 8, 8, 6,0f, 0.5f,0.99f, ForgeDirection.NORTH); + modelThin=new ModelTube(null, 0, 0, -1F, -1F, -3F, 2, 2, 6,0f, 0f,0.99f, ForgeDirection.NORTH); + tex = new ResourceLocation(IHLModInfo.MODID+":textures/blocks/junctionBox.png"); + } + + @Override + public void doRender(Entity entity, double x1, double y1, double z1, float rotationYaw, float iFrame) + { + bindTexture(tex); + GL11.glPushMatrix(); + NodeEntity ne = (NodeEntity) entity; + float x = (float) (ne.lastTickRenderPosX + (ne.renderPosX-ne.lastTickRenderPosX)*iFrame-RenderManager.renderPosX); + float y = (float) (ne.lastTickRenderPosY + (ne.renderPosY-ne.lastTickRenderPosY)*iFrame-RenderManager.renderPosY); + float z = (float) (ne.lastTickRenderPosZ + (ne.renderPosZ-ne.lastTickRenderPosZ)*iFrame-RenderManager.renderPosZ); + GL11.glTranslatef(x, y, z); + GL11.glScalef(0.25F, -0.25F, -0.25F); + int red = ne.colorIndex>>16; + int green = (ne.colorIndex>>8) & 255; + int blue = ne.colorIndex & 255; + for(int i=0;i