| package mekanism.client.model; |
| |
| import mekanism.client.render.MekanismRenderer; |
| |
| import net.minecraft.client.model.ModelBase; |
| import net.minecraft.client.model.ModelRenderer; |
| import cpw.mods.fml.relauncher.Side; |
| import cpw.mods.fml.relauncher.SideOnly; |
| |
| import org.lwjgl.opengl.GL11; |
| |
| @SideOnly(Side.CLIENT) |
| public class ModelGasMask extends ModelBase |
| { |
| ModelRenderer helmetfeed; |
| ModelRenderer tubeback; |
| ModelRenderer tubeL; |
| ModelRenderer tubeR; |
| ModelRenderer tubefront; |
| ModelRenderer mouthintake; |
| ModelRenderer finupperR; |
| ModelRenderer finupperL; |
| ModelRenderer finmidR; |
| ModelRenderer finmidL; |
| ModelRenderer finback; |
| ModelRenderer topplate; |
| ModelRenderer filterL; |
| ModelRenderer filterR; |
| ModelRenderer filterpipelower; |
| ModelRenderer filterpipeupper; |
| ModelRenderer glasstop; |
| ModelRenderer glassfront; |
| ModelRenderer glassR; |
| ModelRenderer glassL; |
| ModelRenderer glassbackR; |
| ModelRenderer glassbackL; |
| ModelRenderer pipecornerFL; |
| ModelRenderer pipecornerFR; |
| ModelRenderer pipecornerBR; |
| ModelRenderer pipecornerBL; |
| ModelRenderer lightL; |
| ModelRenderer lightR; |
| |
| public ModelGasMask() |
| { |
| textureWidth = 128; |
| textureHeight = 64; |
| |
| helmetfeed = new ModelRenderer(this, 88, 43); |
| helmetfeed.addBox(-2F, -2F, 2F, 4, 3, 4); |
| helmetfeed.setRotationPoint(0F, 0F, 0F); |
| helmetfeed.setTextureSize(128, 64); |
| helmetfeed.mirror = true; |
| setRotation(helmetfeed, 0F, 0F, 0F); |
| tubeback = new ModelRenderer(this, 106, 50); |
| tubeback.addBox(-4.5F, -1F, 4.5F, 9, 1, 1); |
| tubeback.setRotationPoint(0F, 0F, 0F); |
| tubeback.setTextureSize(128, 64); |
| tubeback.mirror = true; |
| setRotation(tubeback, 0F, 0F, 0F); |
| tubeL = new ModelRenderer(this, 106, 54); |
| tubeL.addBox(4.5F, -1F, -4.5F, 1, 1, 9); |
| tubeL.setRotationPoint(0F, 0F, 0F); |
| tubeL.setTextureSize(128, 64); |
| tubeL.mirror = true; |
| setRotation(tubeL, 0F, 0F, 0F); |
| tubeR = new ModelRenderer(this, 106, 54); |
| tubeR.addBox(-5.5F, -1F, -4.5F, 1, 1, 9); |
| tubeR.setRotationPoint(0F, 0F, 0F); |
| tubeR.setTextureSize(128, 64); |
| tubeR.mirror = true; |
| setRotation(tubeR, 0F, 0F, 0F); |
| tubefront = new ModelRenderer(this, 106, 50); |
| tubefront.addBox(-4.5F, -1F, -5.5F, 9, 1, 1); |
| tubefront.setRotationPoint(0F, 0F, 0F); |
| tubefront.setTextureSize(128, 64); |
| tubefront.mirror = true; |
| setRotation(tubefront, 0F, 0F, 0F); |
| mouthintake = new ModelRenderer(this, 118, 42); |
| mouthintake.addBox(-1.5F, -0.7F, -6F, 3, 2, 3); |
| mouthintake.setRotationPoint(0F, -2F, 0F); |
| mouthintake.setTextureSize(128, 64); |
| mouthintake.mirror = true; |
| setRotation(mouthintake, 0.2094395F, 0F, 0F); |
| finupperR = new ModelRenderer(this, 78, 50); |
| finupperR.addBox(-6F, -7.5F, -3.3F, 1, 2, 12); |
| finupperR.setRotationPoint(0F, 0F, 0F); |
| finupperR.setTextureSize(128, 64); |
| finupperR.mirror = true; |
| setRotation(finupperR, 0.0698132F, 0F, 0F); |
| finupperL = new ModelRenderer(this, 78, 50); |
| finupperL.addBox(5F, -7.5F, -3.3F, 1, 2, 12); |
| finupperL.setRotationPoint(0F, 0F, 0F); |
| finupperL.setTextureSize(128, 64); |
| finupperL.mirror = true; |
| setRotation(finupperL, 0.0698132F, 0F, 0F); |
| finupperL.mirror = false; |
| finmidR = new ModelRenderer(this, 72, 34); |
| finmidR.addBox(-7.5F, -6F, -1F, 2, 2, 5); |
| finmidR.setRotationPoint(0F, 0F, 0F); |
| finmidR.setTextureSize(128, 64); |
| finmidR.mirror = true; |
| setRotation(finmidR, 0F, 0F, 0F); |
| finmidL = new ModelRenderer(this, 72, 34); |
| finmidL.addBox(5.5F, -6F, -1F, 2, 2, 5); |
| finmidL.setRotationPoint(0F, 0F, 0F); |
| finmidL.setTextureSize(128, 64); |
| finmidL.mirror = true; |
| setRotation(finmidL, 0F, 0F, 0F); |
| finmidL.mirror = false; |
| finback = new ModelRenderer(this, 80, 0); |
| finback.addBox(-1F, -9.6F, 2.5F, 2, 10, 3); |
| finback.setRotationPoint(0F, 0F, 0F); |
| finback.setTextureSize(128, 64); |
| finback.mirror = true; |
| setRotation(finback, 0F, 0F, 0F); |
| topplate = new ModelRenderer(this, 104, 34); |
| topplate.addBox(-3F, -10F, -2F, 6, 2, 6); |
| topplate.setRotationPoint(0F, 0F, 0F); |
| topplate.setTextureSize(128, 64); |
| topplate.mirror = true; |
| setRotation(topplate, 0.1396263F, 0F, 0F); |
| filterL = new ModelRenderer(this, 108, 42); |
| filterL.addBox(3.4F, -1.8F, -5F, 2, 3, 3); |
| filterL.setRotationPoint(0F, 0F, 0F); |
| filterL.setTextureSize(128, 64); |
| filterL.mirror = true; |
| setRotation(filterL, 0F, 0.3839724F, 0.5061455F); |
| filterL.mirror = false; |
| filterR = new ModelRenderer(this, 108, 42); |
| filterR.addBox(-5.4F, -1.8F, -5F, 2, 3, 3); |
| filterR.setRotationPoint(0F, 0F, 0F); |
| filterR.setTextureSize(128, 64); |
| filterR.mirror = true; |
| setRotation(filterR, 0F, -0.3839724F, -0.5061455F); |
| filterpipelower = new ModelRenderer(this, 92, 41); |
| filterpipelower.addBox(-3F, 1F, -5F, 5, 1, 1); |
| filterpipelower.setRotationPoint(0F, 0F, 0F); |
| filterpipelower.setTextureSize(128, 64); |
| filterpipelower.mirror = true; |
| setRotation(filterpipelower, 0F, 0F, 0F); |
| filterpipeupper = new ModelRenderer(this, 104, 42); |
| filterpipeupper.addBox(-0.5F, 0F, -5F, 1, 1, 1); |
| filterpipeupper.setRotationPoint(0F, 0F, 0F); |
| filterpipeupper.setTextureSize(128, 64); |
| filterpipeupper.mirror = true; |
| setRotation(filterpipeupper, 0F, 0F, 0F); |
| glasstop = new ModelRenderer(this, 0, 0); |
| glasstop.addBox(-4F, -9F, -4F, 8, 1, 8); |
| glasstop.setRotationPoint(0F, 0F, 0F); |
| glasstop.setTextureSize(128, 64); |
| glasstop.mirror = true; |
| setRotation(glasstop, 0F, 0F, 0F); |
| glassfront = new ModelRenderer(this, 0, 0); |
| glassfront.addBox(-4F, -8F, -5F, 8, 7, 1); |
| glassfront.setRotationPoint(0F, 0F, 0F); |
| glassfront.setTextureSize(128, 64); |
| glassfront.mirror = true; |
| setRotation(glassfront, 0F, 0F, 0F); |
| glassR = new ModelRenderer(this, 0, 0); |
| glassR.addBox(-5F, -8F, -4F, 1, 7, 8); |
| glassR.setRotationPoint(0F, 0F, 0F); |
| glassR.setTextureSize(128, 64); |
| glassR.mirror = true; |
| setRotation(glassR, 0F, 0F, 0F); |
| glassL = new ModelRenderer(this, 0, 0); |
| glassL.addBox(4F, -8F, -4F, 1, 7, 8); |
| glassL.setRotationPoint(0F, 0F, 0F); |
| glassL.setTextureSize(128, 64); |
| glassL.mirror = true; |
| setRotation(glassL, 0F, 0F, 0F); |
| glassbackR = new ModelRenderer(this, 0, 0); |
| glassbackR.addBox(-4F, -8F, 4F, 3, 7, 1); |
| glassbackR.setRotationPoint(0F, 0F, 0F); |
| glassbackR.setTextureSize(128, 64); |
| glassbackR.mirror = true; |
| setRotation(glassbackR, 0F, 0F, 0F); |
| glassbackL = new ModelRenderer(this, 0, 0); |
| glassbackL.addBox(1F, -8F, 4F, 3, 7, 1); |
| glassbackL.setRotationPoint(0F, 0F, 0F); |
| glassbackL.setTextureSize(128, 64); |
| glassbackL.mirror = true; |
| setRotation(glassbackL, 0F, 0F, 0F); |
| pipecornerFL = new ModelRenderer(this, 109, 50); |
| pipecornerFL.addBox(3.5F, -1F, -4.5F, 1, 1, 1); |
| pipecornerFL.setRotationPoint(0F, 0F, 0F); |
| pipecornerFL.setTextureSize(128, 64); |
| pipecornerFL.mirror = true; |
| setRotation(pipecornerFL, 0F, 0F, 0F); |
| pipecornerFR = new ModelRenderer(this, 109, 50); |
| pipecornerFR.addBox(-4.5F, -1F, -4.5F, 1, 1, 1); |
| pipecornerFR.setRotationPoint(0F, 0F, 0F); |
| pipecornerFR.setTextureSize(128, 64); |
| pipecornerFR.mirror = true; |
| setRotation(pipecornerFR, 0F, 0F, 0F); |
| pipecornerBR = new ModelRenderer(this, 109, 50); |
| pipecornerBR.addBox(-4.5F, -1F, 3.5F, 1, 1, 1); |
| pipecornerBR.setRotationPoint(0F, 0F, 0F); |
| pipecornerBR.setTextureSize(128, 64); |
| pipecornerBR.mirror = true; |
| setRotation(pipecornerBR, 0F, 0F, 0F); |
| pipecornerBL = new ModelRenderer(this, 109, 50); |
| pipecornerBL.addBox(3.5F, -1F, 4.5F, 1, 1, 1); |
| pipecornerBL.setRotationPoint(0F, 0F, -1F); |
| pipecornerBL.setTextureSize(128, 64); |
| pipecornerBL.mirror = true; |
| setRotation(pipecornerBL, 0F, 0F, 0F); |
| lightL = new ModelRenderer(this, 89, 37); |
| lightL.addBox(5.5F, -6F, -2F, 2, 2, 1); |
| lightL.setRotationPoint(0F, 0F, 0F); |
| lightL.setTextureSize(128, 64); |
| lightL.mirror = true; |
| setRotation(lightL, 0F, 0F, 0F); |
| lightR = new ModelRenderer(this, 89, 37); |
| lightR.addBox(-7.5F, -6F, -2F, 2, 2, 1); |
| lightR.setRotationPoint(0F, 0F, 0F); |
| lightR.setTextureSize(128, 64); |
| lightR.mirror = true; |
| setRotation(lightR, 0F, 0F, 0F); |
| } |
| |
| public void render(float size) |
| { |
| helmetfeed.render(size); |
| tubeback.render(size); |
| tubeL.render(size); |
| tubeR.render(size); |
| tubefront.render(size); |
| mouthintake.render(size); |
| finupperR.render(size); |
| finupperL.render(size); |
| finmidR.render(size); |
| finmidL.render(size); |
| finback.render(size); |
| topplate.render(size); |
| filterL.render(size); |
| filterR.render(size); |
| filterpipelower.render(size); |
| filterpipeupper.render(size); |
| |
| MekanismRenderer.blendOn(); |
| MekanismRenderer.glowOn(); |
| GL11.glColor4f(1, 1, 1, 0.3F); |
| GL11.glEnable(GL11.GL_CULL_FACE); |
| |
| glasstop.render(size); |
| glassfront.render(size); |
| glassR.render(size); |
| glassL.render(size); |
| glassbackR.render(size); |
| glassbackL.render(size); |
| |
| GL11.glDisable(GL11.GL_CULL_FACE); |
| GL11.glColor4f(1, 1, 1, 1); |
| MekanismRenderer.glowOff(); |
| MekanismRenderer.blendOff(); |
| |
| pipecornerFL.render(size); |
| pipecornerFR.render(size); |
| pipecornerBR.render(size); |
| pipecornerBL.render(size); |
| |
| MekanismRenderer.glowOn(); |
| lightL.render(size); |
| lightR.render(size); |
| MekanismRenderer.glowOff(); |
| } |
| |
| private void setRotation(ModelRenderer model, float x, float y, float z) |
| { |
| model.rotateAngleX = x; |
| model.rotateAngleY = y; |
| model.rotateAngleZ = z; |
| } |
| } |