Java tutorial
package buildcraftAdditions.client.models; import buildcraftAdditions.utils.RenderUtils; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.util.ResourceLocation; import org.lwjgl.opengl.GL11; /** * Copyright (c) 2014-2015, AEnterprise * http://buildcraftadditions.wordpress.com/ * Buildcraft Additions is distributed under the terms of GNU GPL v3.0 * Please check the contents of the license located in * http://buildcraftadditions.wordpress.com/wiki/licensing-stuff/ */ public class ModelHoverBoots extends ModelBiped { public static final ModelHoverBoots INSTANCE = new ModelHoverBoots(); private final ResourceLocation TEXTURE = new ResourceLocation("bcadditions", "textures/models/armor/hoverBoots.png"); public ModelRenderer shape1; public ModelRenderer shape1_1; public ModelRenderer shape5; public ModelRenderer shape5_1; public ModelRenderer shape5_2; public ModelRenderer shape5_3; public ModelRenderer shape5_4; public ModelRenderer shape5_5; public ModelRenderer shape5_6; public ModelRenderer shape5_7; public ModelRenderer shape5_8; public ModelRenderer shape5_9; public ModelRenderer shape5_10; public ModelRenderer shape5_11; public ModelRenderer shape5_12; public ModelRenderer shape5_13; public ModelRenderer shape5_14; public ModelRenderer shape5_15; public ModelRenderer shape5_16; public ModelRenderer shape5_17; public ModelRenderer shape5_18; public ModelRenderer shape5_19; public ModelRenderer shape5_20; public ModelRenderer shape5_21; public ModelRenderer shape5_22; public ModelRenderer shape5_23; public ModelRenderer shape5_24; public ModelRenderer shape5_25; public ModelRenderer shape5_26; public ModelRenderer shape5_27; public ModelRenderer shape5_28; public ModelRenderer shape5_29; public ModelRenderer shape5_30; public ModelRenderer shape5_31; public ModelRenderer shape5_32; public ModelRenderer shape5_33; public ModelRenderer shape5_34; public ModelRenderer shape5_35; public ModelRenderer shape5_36; public ModelRenderer shape5_37; public ModelRenderer shape5_38; public ModelRenderer shape5_39; public ModelRenderer shape5_40; public ModelRenderer shape5_41; public ModelHoverBoots() { this.textureWidth = 64; this.textureHeight = 32; this.shape1_1 = new ModelRenderer(this, 0, 0); this.shape1_1.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape1_1.addBox(-5.5F, 3.0F, -2.4F, 1, 1, 5, 0.0F); this.shape5_33 = new ModelRenderer(this, 30, 0); this.shape5_33.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_33.addBox(-1.55F, 2.4F, 6.8F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_33, 0.0F, 3.141592653589793F, 0.0F); this.shape5_17 = new ModelRenderer(this, 30, 0); this.shape5_17.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_17.addBox(6.6F, 2.8F, 6.5F, 1, 1, 1, 0.0F); this.shape5_36 = new ModelRenderer(this, 30, 0); this.shape5_36.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_36.addBox(13.4F, 2.9F, 6.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_36, 0.0F, 3.141592653589793F, 0.0F); this.shape5_31 = new ModelRenderer(this, 30, 0); this.shape5_31.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_31.addBox(-3.4F, 2.9F, 6.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_31, 0.0F, 3.141592653589793F, 0.0F); this.shape5_37 = new ModelRenderer(this, 30, 0); this.shape5_37.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_37.addBox(1.0F, 2.9F, 27.9F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_37, 0.0F, 3.141592653589793F, 0.0F); this.shape5_38 = new ModelRenderer(this, 30, 0); this.shape5_38.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_38.addBox(6.6F, 2.9F, 6.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_38, 0.0F, 3.141592653589793F, 0.0F); this.shape5_7 = new ModelRenderer(this, 30, 0); this.shape5_7.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_7.addBox(-1.4F, 10.7F, 6.5F, 1, 1, 1, 0.0F); this.shape5 = new ModelRenderer(this, 0, 12); this.shape5.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5.addBox(-1.8F, 1.0F, 4.2F, 4, 1, 1, 0.0F); this.shape5_27 = new ModelRenderer(this, 30, 4); this.shape5_27.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_27.addBox(22.0F, 1.3F, 20.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_27, 0.0F, 3.141592653589793F, 0.0F); this.shape5_29 = new ModelRenderer(this, 30, 0); this.shape5_29.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_29.addBox(-1.4F, 2.9F, 27.7F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_29, 0.0F, 3.141592653589793F, 0.0F); this.shape5_23 = new ModelRenderer(this, 30, 4); this.shape5_23.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_23.addBox(-19.0F, 1.0F, 19.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_23, 0.0F, 3.141592653589793F, 0.0F); this.shape5_24 = new ModelRenderer(this, 30, 16); this.shape5_24.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_24.addBox(-1.8F, 2.4F, 9.5F, 4, 1, 1, 0.0F); this.setRotateAngle(shape5_24, 0.0F, 3.141592653589793F, 0.0F); this.shape5_1 = new ModelRenderer(this, 0, 16); this.shape5_1.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_1.addBox(-1.8F, 4.1F, 11.5F, 4, 1, 1, 0.0F); this.shape5_13 = new ModelRenderer(this, 30, 0); this.shape5_13.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_13.addBox(-2.1F, 8.2F, 10.4F, 1, 1, 1, 0.0F); this.shape5_10 = new ModelRenderer(this, 30, 0); this.shape5_10.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_10.addBox(-3.399999999999976F, 2.8F, 6.5F, 1, 1, 1, 0.0F); this.shape5_20 = new ModelRenderer(this, 30, 0); this.shape5_20.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_20.addBox(2.1F, 8.2F, 10.4F, 1, 1, 1, 0.0F); this.shape5_18 = new ModelRenderer(this, 30, 0); this.shape5_18.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_18.addBox(4.7F, 12.2F, 10.3F, 1, 1, 1, 0.0F); this.shape5_35 = new ModelRenderer(this, 30, 0); this.shape5_35.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_35.addBox(1.0F, 11.2F, 6.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_35, 0.0F, 3.141592653589793F, 0.0F); this.shape5_15 = new ModelRenderer(this, 30, 0); this.shape5_15.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_15.addBox(13.4F, 2.8F, 6.5F, 1, 1, 1, 0.0F); this.shape5_16 = new ModelRenderer(this, 30, 0); this.shape5_16.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_16.addBox(1.0F, 2.8F, 29.5F, 1, 1, 1, 0.0F); this.shape5_30 = new ModelRenderer(this, 30, 0); this.shape5_30.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_30.addBox(-10.2F, 2.9F, 6.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_30, 0.0F, 3.141592653589793F, 0.0F); this.shape5_41 = new ModelRenderer(this, 30, 0); this.shape5_41.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_41.addBox(2.1F, 8.3F, 9.6F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_41, 0.0F, 3.141592653589793F, 0.0F); this.shape5_39 = new ModelRenderer(this, 30, 0); this.shape5_39.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_39.addBox(4.7F, 12.3F, 9.6F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_39, 0.0F, 3.141592653589793F, 0.0F); this.shape5_5 = new ModelRenderer(this, 0, 8); this.shape5_5.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_5.addBox(22.0F, 0.9F, 21.1F, 1, 1, 1, 0.0F); this.shape5_14 = new ModelRenderer(this, 30, 0); this.shape5_14.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_14.addBox(1.0F, 10.7F, 6.5F, 1, 1, 1, 0.0F); this.shape5_3 = new ModelRenderer(this, 0, 20); this.shape5_3.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_3.addBox(-1.8F, 2.4F, 10.5F, 4, 1, 1, 0.0F); this.shape5_40 = new ModelRenderer(this, 30, 0); this.shape5_40.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_40.addBox(1.25F, 2.4F, 6.8F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_40, 0.0F, 3.141592653589793F, 0.0F); this.shape5_21 = new ModelRenderer(this, 30, 8); this.shape5_21.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_21.addBox(-1.8F, 1.0F, 3.8F, 4, 1, 1, 0.0F); this.setRotateAngle(shape5_21, 0.0F, 3.141592653589793F, 0.0F); this.shape5_28 = new ModelRenderer(this, 30, 0); this.shape5_28.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_28.addBox(-1.4F, 11.1F, 6.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_28, 0.0F, 3.141592653589793F, 0.0F); this.shape1 = new ModelRenderer(this, 0, 0); this.shape1.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape1.addBox(5.5F, 3.0F, -2.4F, 1, 1, 5, 0.0F); this.shape5_19 = new ModelRenderer(this, 30, 0); this.shape5_19.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_19.addBox(1.25F, 2.3F, 7.4F, 1, 1, 1, 0.0F); this.shape5_2 = new ModelRenderer(this, 0, 8); this.shape5_2.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_2.addBox(-19.0F, 0.9F, 21.1F, 1, 1, 1, 0.0F); this.shape5_11 = new ModelRenderer(this, 30, 0); this.shape5_11.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_11.addBox(-3.7F, 12.2F, 10.3F, 1, 1, 1, 0.0F); this.shape5_25 = new ModelRenderer(this, 30, 4); this.shape5_25.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_25.addBox(-19.0F, 1.3F, 20.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_25, 0.0F, 3.141592653589793F, 0.0F); this.shape5_34 = new ModelRenderer(this, 30, 0); this.shape5_34.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_34.addBox(-2.1F, 8.3F, 9.6F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_34, 0.0F, 3.141592653589793F, 0.0F); this.shape5_4 = new ModelRenderer(this, 0, 8); this.shape5_4.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_4.addBox(-19.0F, 1.2F, 22.1F, 1, 1, 1, 0.0F); this.shape5_9 = new ModelRenderer(this, 30, 0); this.shape5_9.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_9.addBox(-10.199999999999985F, 2.8F, 6.5F, 1, 1, 1, 0.0F); this.shape5_12 = new ModelRenderer(this, 30, 0); this.shape5_12.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_12.addBox(-1.5500000000000005F, 2.3F, 7.4F, 1, 1, 1, 0.0F); this.shape5_22 = new ModelRenderer(this, 30, 12); this.shape5_22.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_22.addBox(-1.8F, 4.0F, 10.5F, 4, 1, 1, 0.0F); this.setRotateAngle(shape5_22, 0.0F, 3.141592653589793F, 0.0F); this.shape5_26 = new ModelRenderer(this, 30, 4); this.shape5_26.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_26.addBox(22.0F, 1.0F, 19.0F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_26, 0.0F, 3.141592653589793F, 0.0F); this.shape5_32 = new ModelRenderer(this, 30, 0); this.shape5_32.setRotationPoint(2.1F, 22.0F, 0.0F); this.shape5_32.addBox(-3.7F, 12.3F, 9.4F, 1, 1, 1, 0.0F); this.setRotateAngle(shape5_32, 0.0F, 3.141592653589793F, 0.0F); this.shape5_8 = new ModelRenderer(this, 30, 0); this.shape5_8.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_8.addBox(-1.4F, 2.8F, 29.5F, 1, 1, 1, 0.0F); this.shape5_6 = new ModelRenderer(this, 0, 8); this.shape5_6.setRotationPoint(1.7F, 22.0F, 0.0F); this.shape5_6.addBox(22.0F, 1.2F, 22.1F, 1, 1, 1, 0.0F); } @Override public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { RenderUtils.bindTexture(TEXTURE); GL11.glPushMatrix(); GL11.glTranslatef(this.shape1_1.offsetX, this.shape1_1.offsetY, this.shape1_1.offsetZ); GL11.glTranslatef(this.shape1_1.rotationPointX * f5, this.shape1_1.rotationPointY * f5, this.shape1_1.rotationPointZ * f5); GL11.glScaled(0.4D, 0.5D, 0.9D); GL11.glTranslatef(-this.shape1_1.offsetX, -this.shape1_1.offsetY, -this.shape1_1.offsetZ); GL11.glTranslatef(-this.shape1_1.rotationPointX * f5, -this.shape1_1.rotationPointY * f5, -this.shape1_1.rotationPointZ * f5); this.shape1_1.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_33.offsetX, this.shape5_33.offsetY, this.shape5_33.offsetZ); GL11.glTranslatef(this.shape5_33.rotationPointX * f5, this.shape5_33.rotationPointY * f5, this.shape5_33.rotationPointZ * f5); GL11.glScaled(0.6D, 0.5D, 0.35D); GL11.glTranslatef(-this.shape5_33.offsetX, -this.shape5_33.offsetY, -this.shape5_33.offsetZ); GL11.glTranslatef(-this.shape5_33.rotationPointX * f5, -this.shape5_33.rotationPointY * f5, -this.shape5_33.rotationPointZ * f5); this.shape5_33.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_17.offsetX, this.shape5_17.offsetY, this.shape5_17.offsetZ); GL11.glTranslatef(this.shape5_17.rotationPointX * f5, this.shape5_17.rotationPointY * f5, this.shape5_17.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_17.offsetX, -this.shape5_17.offsetY, -this.shape5_17.offsetZ); GL11.glTranslatef(-this.shape5_17.rotationPointX * f5, -this.shape5_17.rotationPointY * f5, -this.shape5_17.rotationPointZ * f5); this.shape5_17.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_36.offsetX, this.shape5_36.offsetY, this.shape5_36.offsetZ); GL11.glTranslatef(this.shape5_36.rotationPointX * f5, this.shape5_36.rotationPointY * f5, this.shape5_36.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_36.offsetX, -this.shape5_36.offsetY, -this.shape5_36.offsetZ); GL11.glTranslatef(-this.shape5_36.rotationPointX * f5, -this.shape5_36.rotationPointY * f5, -this.shape5_36.rotationPointZ * f5); this.shape5_36.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_31.offsetX, this.shape5_31.offsetY, this.shape5_31.offsetZ); GL11.glTranslatef(this.shape5_31.rotationPointX * f5, this.shape5_31.rotationPointY * f5, this.shape5_31.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_31.offsetX, -this.shape5_31.offsetY, -this.shape5_31.offsetZ); GL11.glTranslatef(-this.shape5_31.rotationPointX * f5, -this.shape5_31.rotationPointY * f5, -this.shape5_31.rotationPointZ * f5); this.shape5_31.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_37.offsetX, this.shape5_37.offsetY, this.shape5_37.offsetZ); GL11.glTranslatef(this.shape5_37.rotationPointX * f5, this.shape5_37.rotationPointY * f5, this.shape5_37.rotationPointZ * f5); GL11.glScaled(0.7D, 0.4D, 0.1D); GL11.glTranslatef(-this.shape5_37.offsetX, -this.shape5_37.offsetY, -this.shape5_37.offsetZ); GL11.glTranslatef(-this.shape5_37.rotationPointX * f5, -this.shape5_37.rotationPointY * f5, -this.shape5_37.rotationPointZ * f5); this.shape5_37.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_38.offsetX, this.shape5_38.offsetY, this.shape5_38.offsetZ); GL11.glTranslatef(this.shape5_38.rotationPointX * f5, this.shape5_38.rotationPointY * f5, this.shape5_38.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_38.offsetX, -this.shape5_38.offsetY, -this.shape5_38.offsetZ); GL11.glTranslatef(-this.shape5_38.rotationPointX * f5, -this.shape5_38.rotationPointY * f5, -this.shape5_38.rotationPointZ * f5); this.shape5_38.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_7.offsetX, this.shape5_7.offsetY, this.shape5_7.offsetZ); GL11.glTranslatef(this.shape5_7.rotationPointX * f5, this.shape5_7.rotationPointY * f5, this.shape5_7.rotationPointZ * f5); GL11.glScaled(0.7D, 0.1D, 0.4D); GL11.glTranslatef(-this.shape5_7.offsetX, -this.shape5_7.offsetY, -this.shape5_7.offsetZ); GL11.glTranslatef(-this.shape5_7.rotationPointX * f5, -this.shape5_7.rotationPointY * f5, -this.shape5_7.rotationPointZ * f5); this.shape5_7.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5.offsetX, this.shape5.offsetY, this.shape5.offsetZ); GL11.glTranslatef(this.shape5.rotationPointX * f5, this.shape5.rotationPointY * f5, this.shape5.rotationPointZ * f5); GL11.glScaled(1.0D, 1.0D, 0.5D); GL11.glTranslatef(-this.shape5.offsetX, -this.shape5.offsetY, -this.shape5.offsetZ); GL11.glTranslatef(-this.shape5.rotationPointX * f5, -this.shape5.rotationPointY * f5, -this.shape5.rotationPointZ * f5); this.shape5.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_27.offsetX, this.shape5_27.offsetY, this.shape5_27.offsetZ); GL11.glTranslatef(this.shape5_27.rotationPointX * f5, this.shape5_27.rotationPointY * f5, this.shape5_27.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_27.offsetX, -this.shape5_27.offsetY, -this.shape5_27.offsetZ); GL11.glTranslatef(-this.shape5_27.rotationPointX * f5, -this.shape5_27.rotationPointY * f5, -this.shape5_27.rotationPointZ * f5); this.shape5_27.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_29.offsetX, this.shape5_29.offsetY, this.shape5_29.offsetZ); GL11.glTranslatef(this.shape5_29.rotationPointX * f5, this.shape5_29.rotationPointY * f5, this.shape5_29.rotationPointZ * f5); GL11.glScaled(0.7D, 0.4D, 0.1D); GL11.glTranslatef(-this.shape5_29.offsetX, -this.shape5_29.offsetY, -this.shape5_29.offsetZ); GL11.glTranslatef(-this.shape5_29.rotationPointX * f5, -this.shape5_29.rotationPointY * f5, -this.shape5_29.rotationPointZ * f5); this.shape5_29.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_23.offsetX, this.shape5_23.offsetY, this.shape5_23.offsetZ); GL11.glTranslatef(this.shape5_23.rotationPointX * f5, this.shape5_23.rotationPointY * f5, this.shape5_23.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_23.offsetX, -this.shape5_23.offsetY, -this.shape5_23.offsetZ); GL11.glTranslatef(-this.shape5_23.rotationPointX * f5, -this.shape5_23.rotationPointY * f5, -this.shape5_23.rotationPointZ * f5); this.shape5_23.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_24.offsetX, this.shape5_24.offsetY, this.shape5_24.offsetZ); GL11.glTranslatef(this.shape5_24.rotationPointX * f5, this.shape5_24.rotationPointY * f5, this.shape5_24.rotationPointZ * f5); GL11.glScaled(1.0D, 0.3D, 0.2D); GL11.glTranslatef(-this.shape5_24.offsetX, -this.shape5_24.offsetY, -this.shape5_24.offsetZ); GL11.glTranslatef(-this.shape5_24.rotationPointX * f5, -this.shape5_24.rotationPointY * f5, -this.shape5_24.rotationPointZ * f5); this.shape5_24.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_1.offsetX, this.shape5_1.offsetY, this.shape5_1.offsetZ); GL11.glTranslatef(this.shape5_1.rotationPointX * f5, this.shape5_1.rotationPointY * f5, this.shape5_1.rotationPointZ * f5); GL11.glScaled(1.0D, 0.2D, 0.2D); GL11.glTranslatef(-this.shape5_1.offsetX, -this.shape5_1.offsetY, -this.shape5_1.offsetZ); GL11.glTranslatef(-this.shape5_1.rotationPointX * f5, -this.shape5_1.rotationPointY * f5, -this.shape5_1.rotationPointZ * f5); this.shape5_1.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_13.offsetX, this.shape5_13.offsetY, this.shape5_13.offsetZ); GL11.glTranslatef(this.shape5_13.rotationPointX * f5, this.shape5_13.rotationPointY * f5, this.shape5_13.rotationPointZ * f5); GL11.glScaled(0.4D, 0.2D, 0.25D); GL11.glTranslatef(-this.shape5_13.offsetX, -this.shape5_13.offsetY, -this.shape5_13.offsetZ); GL11.glTranslatef(-this.shape5_13.rotationPointX * f5, -this.shape5_13.rotationPointY * f5, -this.shape5_13.rotationPointZ * f5); this.shape5_13.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_10.offsetX, this.shape5_10.offsetY, this.shape5_10.offsetZ); GL11.glTranslatef(this.shape5_10.rotationPointX * f5, this.shape5_10.rotationPointY * f5, this.shape5_10.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_10.offsetX, -this.shape5_10.offsetY, -this.shape5_10.offsetZ); GL11.glTranslatef(-this.shape5_10.rotationPointX * f5, -this.shape5_10.rotationPointY * f5, -this.shape5_10.rotationPointZ * f5); this.shape5_10.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_20.offsetX, this.shape5_20.offsetY, this.shape5_20.offsetZ); GL11.glTranslatef(this.shape5_20.rotationPointX * f5, this.shape5_20.rotationPointY * f5, this.shape5_20.rotationPointZ * f5); GL11.glScaled(0.4D, 0.2D, 0.25D); GL11.glTranslatef(-this.shape5_20.offsetX, -this.shape5_20.offsetY, -this.shape5_20.offsetZ); GL11.glTranslatef(-this.shape5_20.rotationPointX * f5, -this.shape5_20.rotationPointY * f5, -this.shape5_20.rotationPointZ * f5); this.shape5_20.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_18.offsetX, this.shape5_18.offsetY, this.shape5_18.offsetZ); GL11.glTranslatef(this.shape5_18.rotationPointX * f5, this.shape5_18.rotationPointY * f5, this.shape5_18.rotationPointZ * f5); GL11.glScaled(0.2D, 0.15D, 0.25D); GL11.glTranslatef(-this.shape5_18.offsetX, -this.shape5_18.offsetY, -this.shape5_18.offsetZ); GL11.glTranslatef(-this.shape5_18.rotationPointX * f5, -this.shape5_18.rotationPointY * f5, -this.shape5_18.rotationPointZ * f5); this.shape5_18.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_35.offsetX, this.shape5_35.offsetY, this.shape5_35.offsetZ); GL11.glTranslatef(this.shape5_35.rotationPointX * f5, this.shape5_35.rotationPointY * f5, this.shape5_35.rotationPointZ * f5); GL11.glScaled(0.7D, 0.1D, 0.4D); GL11.glTranslatef(-this.shape5_35.offsetX, -this.shape5_35.offsetY, -this.shape5_35.offsetZ); GL11.glTranslatef(-this.shape5_35.rotationPointX * f5, -this.shape5_35.rotationPointY * f5, -this.shape5_35.rotationPointZ * f5); this.shape5_35.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_15.offsetX, this.shape5_15.offsetY, this.shape5_15.offsetZ); GL11.glTranslatef(this.shape5_15.rotationPointX * f5, this.shape5_15.rotationPointY * f5, this.shape5_15.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_15.offsetX, -this.shape5_15.offsetY, -this.shape5_15.offsetZ); GL11.glTranslatef(-this.shape5_15.rotationPointX * f5, -this.shape5_15.rotationPointY * f5, -this.shape5_15.rotationPointZ * f5); this.shape5_15.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_16.offsetX, this.shape5_16.offsetY, this.shape5_16.offsetZ); GL11.glTranslatef(this.shape5_16.rotationPointX * f5, this.shape5_16.rotationPointY * f5, this.shape5_16.rotationPointZ * f5); GL11.glScaled(0.7D, 0.4D, 0.1D); GL11.glTranslatef(-this.shape5_16.offsetX, -this.shape5_16.offsetY, -this.shape5_16.offsetZ); GL11.glTranslatef(-this.shape5_16.rotationPointX * f5, -this.shape5_16.rotationPointY * f5, -this.shape5_16.rotationPointZ * f5); this.shape5_16.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_30.offsetX, this.shape5_30.offsetY, this.shape5_30.offsetZ); GL11.glTranslatef(this.shape5_30.rotationPointX * f5, this.shape5_30.rotationPointY * f5, this.shape5_30.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_30.offsetX, -this.shape5_30.offsetY, -this.shape5_30.offsetZ); GL11.glTranslatef(-this.shape5_30.rotationPointX * f5, -this.shape5_30.rotationPointY * f5, -this.shape5_30.rotationPointZ * f5); this.shape5_30.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_41.offsetX, this.shape5_41.offsetY, this.shape5_41.offsetZ); GL11.glTranslatef(this.shape5_41.rotationPointX * f5, this.shape5_41.rotationPointY * f5, this.shape5_41.rotationPointZ * f5); GL11.glScaled(0.4D, 0.2D, 0.25D); GL11.glTranslatef(-this.shape5_41.offsetX, -this.shape5_41.offsetY, -this.shape5_41.offsetZ); GL11.glTranslatef(-this.shape5_41.rotationPointX * f5, -this.shape5_41.rotationPointY * f5, -this.shape5_41.rotationPointZ * f5); this.shape5_41.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_39.offsetX, this.shape5_39.offsetY, this.shape5_39.offsetZ); GL11.glTranslatef(this.shape5_39.rotationPointX * f5, this.shape5_39.rotationPointY * f5, this.shape5_39.rotationPointZ * f5); GL11.glScaled(0.2D, 0.15D, 0.25D); GL11.glTranslatef(-this.shape5_39.offsetX, -this.shape5_39.offsetY, -this.shape5_39.offsetZ); GL11.glTranslatef(-this.shape5_39.rotationPointX * f5, -this.shape5_39.rotationPointY * f5, -this.shape5_39.rotationPointZ * f5); this.shape5_39.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_5.offsetX, this.shape5_5.offsetY, this.shape5_5.offsetZ); GL11.glTranslatef(this.shape5_5.rotationPointX * f5, this.shape5_5.rotationPointY * f5, this.shape5_5.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_5.offsetX, -this.shape5_5.offsetY, -this.shape5_5.offsetZ); GL11.glTranslatef(-this.shape5_5.rotationPointX * f5, -this.shape5_5.rotationPointY * f5, -this.shape5_5.rotationPointZ * f5); this.shape5_5.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_14.offsetX, this.shape5_14.offsetY, this.shape5_14.offsetZ); GL11.glTranslatef(this.shape5_14.rotationPointX * f5, this.shape5_14.rotationPointY * f5, this.shape5_14.rotationPointZ * f5); GL11.glScaled(0.7D, 0.1D, 0.4D); GL11.glTranslatef(-this.shape5_14.offsetX, -this.shape5_14.offsetY, -this.shape5_14.offsetZ); GL11.glTranslatef(-this.shape5_14.rotationPointX * f5, -this.shape5_14.rotationPointY * f5, -this.shape5_14.rotationPointZ * f5); this.shape5_14.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_3.offsetX, this.shape5_3.offsetY, this.shape5_3.offsetZ); GL11.glTranslatef(this.shape5_3.rotationPointX * f5, this.shape5_3.rotationPointY * f5, this.shape5_3.rotationPointZ * f5); GL11.glScaled(1.0D, 0.3D, 0.2D); GL11.glTranslatef(-this.shape5_3.offsetX, -this.shape5_3.offsetY, -this.shape5_3.offsetZ); GL11.glTranslatef(-this.shape5_3.rotationPointX * f5, -this.shape5_3.rotationPointY * f5, -this.shape5_3.rotationPointZ * f5); this.shape5_3.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_40.offsetX, this.shape5_40.offsetY, this.shape5_40.offsetZ); GL11.glTranslatef(this.shape5_40.rotationPointX * f5, this.shape5_40.rotationPointY * f5, this.shape5_40.rotationPointZ * f5); GL11.glScaled(0.6D, 0.5D, 0.35D); GL11.glTranslatef(-this.shape5_40.offsetX, -this.shape5_40.offsetY, -this.shape5_40.offsetZ); GL11.glTranslatef(-this.shape5_40.rotationPointX * f5, -this.shape5_40.rotationPointY * f5, -this.shape5_40.rotationPointZ * f5); this.shape5_40.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_21.offsetX, this.shape5_21.offsetY, this.shape5_21.offsetZ); GL11.glTranslatef(this.shape5_21.rotationPointX * f5, this.shape5_21.rotationPointY * f5, this.shape5_21.rotationPointZ * f5); GL11.glScaled(1.0D, 1.0D, 0.5D); GL11.glTranslatef(-this.shape5_21.offsetX, -this.shape5_21.offsetY, -this.shape5_21.offsetZ); GL11.glTranslatef(-this.shape5_21.rotationPointX * f5, -this.shape5_21.rotationPointY * f5, -this.shape5_21.rotationPointZ * f5); this.shape5_21.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_28.offsetX, this.shape5_28.offsetY, this.shape5_28.offsetZ); GL11.glTranslatef(this.shape5_28.rotationPointX * f5, this.shape5_28.rotationPointY * f5, this.shape5_28.rotationPointZ * f5); GL11.glScaled(0.7D, 0.1D, 0.4D); GL11.glTranslatef(-this.shape5_28.offsetX, -this.shape5_28.offsetY, -this.shape5_28.offsetZ); GL11.glTranslatef(-this.shape5_28.rotationPointX * f5, -this.shape5_28.rotationPointY * f5, -this.shape5_28.rotationPointZ * f5); this.shape5_28.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape1.offsetX, this.shape1.offsetY, this.shape1.offsetZ); GL11.glTranslatef(this.shape1.rotationPointX * f5, this.shape1.rotationPointY * f5, this.shape1.rotationPointZ * f5); GL11.glScaled(0.4D, 0.5D, 0.9D); GL11.glTranslatef(-this.shape1.offsetX, -this.shape1.offsetY, -this.shape1.offsetZ); GL11.glTranslatef(-this.shape1.rotationPointX * f5, -this.shape1.rotationPointY * f5, -this.shape1.rotationPointZ * f5); this.shape1.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_19.offsetX, this.shape5_19.offsetY, this.shape5_19.offsetZ); GL11.glTranslatef(this.shape5_19.rotationPointX * f5, this.shape5_19.rotationPointY * f5, this.shape5_19.rotationPointZ * f5); GL11.glScaled(0.6D, 0.5D, 0.35D); GL11.glTranslatef(-this.shape5_19.offsetX, -this.shape5_19.offsetY, -this.shape5_19.offsetZ); GL11.glTranslatef(-this.shape5_19.rotationPointX * f5, -this.shape5_19.rotationPointY * f5, -this.shape5_19.rotationPointZ * f5); this.shape5_19.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_2.offsetX, this.shape5_2.offsetY, this.shape5_2.offsetZ); GL11.glTranslatef(this.shape5_2.rotationPointX * f5, this.shape5_2.rotationPointY * f5, this.shape5_2.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_2.offsetX, -this.shape5_2.offsetY, -this.shape5_2.offsetZ); GL11.glTranslatef(-this.shape5_2.rotationPointX * f5, -this.shape5_2.rotationPointY * f5, -this.shape5_2.rotationPointZ * f5); this.shape5_2.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_11.offsetX, this.shape5_11.offsetY, this.shape5_11.offsetZ); GL11.glTranslatef(this.shape5_11.rotationPointX * f5, this.shape5_11.rotationPointY * f5, this.shape5_11.rotationPointZ * f5); GL11.glScaled(0.2D, 0.15D, 0.25D); GL11.glTranslatef(-this.shape5_11.offsetX, -this.shape5_11.offsetY, -this.shape5_11.offsetZ); GL11.glTranslatef(-this.shape5_11.rotationPointX * f5, -this.shape5_11.rotationPointY * f5, -this.shape5_11.rotationPointZ * f5); this.shape5_11.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_25.offsetX, this.shape5_25.offsetY, this.shape5_25.offsetZ); GL11.glTranslatef(this.shape5_25.rotationPointX * f5, this.shape5_25.rotationPointY * f5, this.shape5_25.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_25.offsetX, -this.shape5_25.offsetY, -this.shape5_25.offsetZ); GL11.glTranslatef(-this.shape5_25.rotationPointX * f5, -this.shape5_25.rotationPointY * f5, -this.shape5_25.rotationPointZ * f5); this.shape5_25.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_34.offsetX, this.shape5_34.offsetY, this.shape5_34.offsetZ); GL11.glTranslatef(this.shape5_34.rotationPointX * f5, this.shape5_34.rotationPointY * f5, this.shape5_34.rotationPointZ * f5); GL11.glScaled(0.4D, 0.2D, 0.25D); GL11.glTranslatef(-this.shape5_34.offsetX, -this.shape5_34.offsetY, -this.shape5_34.offsetZ); GL11.glTranslatef(-this.shape5_34.rotationPointX * f5, -this.shape5_34.rotationPointY * f5, -this.shape5_34.rotationPointZ * f5); this.shape5_34.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_4.offsetX, this.shape5_4.offsetY, this.shape5_4.offsetZ); GL11.glTranslatef(this.shape5_4.rotationPointX * f5, this.shape5_4.rotationPointY * f5, this.shape5_4.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_4.offsetX, -this.shape5_4.offsetY, -this.shape5_4.offsetZ); GL11.glTranslatef(-this.shape5_4.rotationPointX * f5, -this.shape5_4.rotationPointY * f5, -this.shape5_4.rotationPointZ * f5); this.shape5_4.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_9.offsetX, this.shape5_9.offsetY, this.shape5_9.offsetZ); GL11.glTranslatef(this.shape5_9.rotationPointX * f5, this.shape5_9.rotationPointY * f5, this.shape5_9.rotationPointZ * f5); GL11.glScaled(0.1D, 0.4D, 0.4D); GL11.glTranslatef(-this.shape5_9.offsetX, -this.shape5_9.offsetY, -this.shape5_9.offsetZ); GL11.glTranslatef(-this.shape5_9.rotationPointX * f5, -this.shape5_9.rotationPointY * f5, -this.shape5_9.rotationPointZ * f5); this.shape5_9.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_12.offsetX, this.shape5_12.offsetY, this.shape5_12.offsetZ); GL11.glTranslatef(this.shape5_12.rotationPointX * f5, this.shape5_12.rotationPointY * f5, this.shape5_12.rotationPointZ * f5); GL11.glScaled(0.6D, 0.5D, 0.35D); GL11.glTranslatef(-this.shape5_12.offsetX, -this.shape5_12.offsetY, -this.shape5_12.offsetZ); GL11.glTranslatef(-this.shape5_12.rotationPointX * f5, -this.shape5_12.rotationPointY * f5, -this.shape5_12.rotationPointZ * f5); this.shape5_12.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_22.offsetX, this.shape5_22.offsetY, this.shape5_22.offsetZ); GL11.glTranslatef(this.shape5_22.rotationPointX * f5, this.shape5_22.rotationPointY * f5, this.shape5_22.rotationPointZ * f5); GL11.glScaled(1.0D, 0.2D, 0.2D); GL11.glTranslatef(-this.shape5_22.offsetX, -this.shape5_22.offsetY, -this.shape5_22.offsetZ); GL11.glTranslatef(-this.shape5_22.rotationPointX * f5, -this.shape5_22.rotationPointY * f5, -this.shape5_22.rotationPointZ * f5); this.shape5_22.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_26.offsetX, this.shape5_26.offsetY, this.shape5_26.offsetZ); GL11.glTranslatef(this.shape5_26.rotationPointX * f5, this.shape5_26.rotationPointY * f5, this.shape5_26.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_26.offsetX, -this.shape5_26.offsetY, -this.shape5_26.offsetZ); GL11.glTranslatef(-this.shape5_26.rotationPointX * f5, -this.shape5_26.rotationPointY * f5, -this.shape5_26.rotationPointZ * f5); this.shape5_26.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_32.offsetX, this.shape5_32.offsetY, this.shape5_32.offsetZ); GL11.glTranslatef(this.shape5_32.rotationPointX * f5, this.shape5_32.rotationPointY * f5, this.shape5_32.rotationPointZ * f5); GL11.glScaled(0.2D, 0.15D, 0.25D); GL11.glTranslatef(-this.shape5_32.offsetX, -this.shape5_32.offsetY, -this.shape5_32.offsetZ); GL11.glTranslatef(-this.shape5_32.rotationPointX * f5, -this.shape5_32.rotationPointY * f5, -this.shape5_32.rotationPointZ * f5); this.shape5_32.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_8.offsetX, this.shape5_8.offsetY, this.shape5_8.offsetZ); GL11.glTranslatef(this.shape5_8.rotationPointX * f5, this.shape5_8.rotationPointY * f5, this.shape5_8.rotationPointZ * f5); GL11.glScaled(0.7D, 0.4D, 0.1D); GL11.glTranslatef(-this.shape5_8.offsetX, -this.shape5_8.offsetY, -this.shape5_8.offsetZ); GL11.glTranslatef(-this.shape5_8.rotationPointX * f5, -this.shape5_8.rotationPointY * f5, -this.shape5_8.rotationPointZ * f5); this.shape5_8.render(f5); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glTranslatef(this.shape5_6.offsetX, this.shape5_6.offsetY, this.shape5_6.offsetZ); GL11.glTranslatef(this.shape5_6.rotationPointX * f5, this.shape5_6.rotationPointY * f5, this.shape5_6.rotationPointZ * f5); GL11.glScaled(0.1D, 0.8D, 0.1D); GL11.glTranslatef(-this.shape5_6.offsetX, -this.shape5_6.offsetY, -this.shape5_6.offsetZ); GL11.glTranslatef(-this.shape5_6.rotationPointX * f5, -this.shape5_6.rotationPointY * f5, -this.shape5_6.rotationPointZ * f5); this.shape5_6.render(f5); GL11.glPopMatrix(); GL11.glPopMatrix(); } /** * This is a helper function from Tabula to set the rotation of model parts */ public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) { modelRenderer.rotateAngleX = x; modelRenderer.rotateAngleY = y; modelRenderer.rotateAngleZ = z; } }