/******************************************************************************* * AbyssalCraft * Copyright (c) 2012 - 2017 Shinoow. * All rights reserved. This program and the accompanying materials * are made available under the terms of the GNU Lesser Public License v3 * which accompanies this distribution, and is available at * http://www.gnu.org/licenses/lgpl-3.0.txt * * Contributors: * Shinoow - implementation ******************************************************************************/ package com.shinoow.abyssalcraft.client.model.entity; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.entity.Entity; import net.minecraft.util.math.MathHelper; public class ModelLesserShoggoth extends ModelBase { ModelRenderer jaw1; ModelRenderer head1; ModelRenderer body1; ModelRenderer tooth1; ModelRenderer head2; ModelRenderer head3; public ModelRenderer rightleg1; ModelRenderer leftleg1; ModelRenderer jaw2; ModelRenderer jaw3; ModelRenderer tooth2; ModelRenderer tooth3; ModelRenderer tooth4; ModelRenderer tooth5; ModelRenderer tooth6; ModelRenderer tooth7; ModelRenderer tooth8; ModelRenderer tooth10; ModelRenderer tooth11; ModelRenderer tooth12; ModelRenderer tooth13; ModelRenderer tooth14; ModelRenderer head4; ModelRenderer head5; ModelRenderer head6; ModelRenderer eye2; ModelRenderer eye3; ModelRenderer head7; ModelRenderer head8; ModelRenderer eye7; ModelRenderer eye5; ModelRenderer eye6; ModelRenderer eye4; ModelRenderer eye1; ModelRenderer headtentbase; ModelRenderer leftleg2; ModelRenderer leftkneecap; ModelRenderer leftleg3; ModelRenderer leftfoot1; ModelRenderer leftfoot2; ModelRenderer leftfoot3; ModelRenderer rightkneecap; ModelRenderer rightleg2; ModelRenderer rightleg3; ModelRenderer rightfoot3; ModelRenderer rightfoot1; ModelRenderer rightfoot2; ModelRenderer tentacle1; ModelRenderer tentacle2; ModelRenderer tentacle3; ModelRenderer tentacle4; ModelRenderer tentacle5; ModelRenderer tentacle6; ModelRenderer tentacle7; ModelRenderer tentacle8; ModelRenderer tentacle9; ModelRenderer body2; ModelRenderer eye8; ModelRenderer body3; ModelRenderer body5; ModelRenderer body4; ModelRenderer body6; ModelRenderer jaw5; ModelRenderer jaw4; ModelRenderer spike4; ModelRenderer spike3; ModelRenderer spike2; ModelRenderer spike1; ModelRenderer buldge1; ModelRenderer buldge5; ModelRenderer buldge2; ModelRenderer buldge3; ModelRenderer buldge4; public ModelLesserShoggoth() { textureWidth = 128; textureHeight = 64; jaw1 = new ModelRenderer(this, 0, 0); jaw1.addBox(-5F, 0F, -10F, 10, 1, 10); jaw1.setRotationPoint(0F, 12F, 0F); jaw1.setTextureSize(64, 32); jaw1.mirror = true; setRotation(jaw1, 0F, 0F, 0F); head1 = new ModelRenderer(this, 40, 0); head1.addBox(-5F, -1F, -10F, 10, 2, 10); head1.setRotationPoint(0F, 5F, 0F); head1.setTextureSize(64, 32); head1.mirror = true; setRotation(head1, 0F, 0F, 0F); body1 = new ModelRenderer(this, 80, 0); body1.addBox(0F, 0F, 0F, 12, 11, 12); body1.setRotationPoint(-6F, 2F, 0F); body1.setTextureSize(64, 32); body1.mirror = true; setRotation(body1, 0F, 0F, 0F); tooth1 = new ModelRenderer(this, 0, 0); tooth1.addBox(0F, 0F, 0F, 1, 4, 1); tooth1.setRotationPoint(-5F, 6F, -2F); tooth1.setTextureSize(64, 32); tooth1.mirror = true; setRotation(tooth1, 0F, 0F, 0F); head2 = new ModelRenderer(this, 40, 12); head2.addBox(0F, 0F, 0F, 8, 2, 1); head2.setRotationPoint(-4F, 4F, -11F); head2.setTextureSize(64, 32); head2.mirror = true; setRotation(head2, 0F, 0F, 0F); head3 = new ModelRenderer(this, 40, 14); head3.addBox(0F, 0F, 0F, 6, 2, 1); head3.setRotationPoint(-3F, 4F, -12F); head3.setTextureSize(64, 32); head3.mirror = true; setRotation(head3, 0F, 0F, 0F); rightleg1 = new ModelRenderer(this, 0, 18); rightleg1.addBox(-1.5F, 0F, -1.5F, 3, 8, 3); rightleg1.setRotationPoint(-4F, 5F, 3F); rightleg1.setTextureSize(64, 32); rightleg1.mirror = true; setRotation(rightleg1, 0F, 0F, 0.6981317F); leftleg1 = new ModelRenderer(this, 0, 18); leftleg1.addBox(-1.5F, 0F, -1.5F, 3, 8, 3); leftleg1.setRotationPoint(4F, 5F, 3F); leftleg1.setTextureSize(64, 32); leftleg1.mirror = true; setRotation(leftleg1, 0F, 0F, -0.6981317F); jaw2 = new ModelRenderer(this, 0, 12); jaw2.addBox(0F, 0F, 0F, 8, 1, 1); jaw2.setRotationPoint(-4F, 12F, -11F); jaw2.setTextureSize(64, 32); jaw2.mirror = true; setRotation(jaw2, 0F, 0F, 0F); jaw3 = new ModelRenderer(this, 0, 14); jaw3.addBox(0F, 0F, 0F, 6, 1, 1); jaw3.setRotationPoint(-3F, 12F, -12F); jaw3.setTextureSize(64, 32); jaw3.mirror = true; setRotation(jaw3, 0F, 0F, 0F); tooth2 = new ModelRenderer(this, 0, 0); tooth2.addBox(0F, 0F, 0F, 1, 4, 1); tooth2.setRotationPoint(-5F, 6F, -4F); tooth2.setTextureSize(64, 32); tooth2.mirror = true; setRotation(tooth2, 0F, 0F, 0F); tooth3 = new ModelRenderer(this, 0, 0); tooth3.addBox(0F, 0F, 0F, 1, 4, 1); tooth3.setRotationPoint(-5F, 6F, -6F); tooth3.setTextureSize(64, 32); tooth3.mirror = true; setRotation(tooth3, 0F, 0F, 0F); tooth4 = new ModelRenderer(this, 0, 0); tooth4.addBox(0F, 0F, 0F, 1, 4, 1); tooth4.setRotationPoint(-5F, 6F, -8F); tooth4.setTextureSize(64, 32); tooth4.mirror = true; setRotation(tooth4, 0F, 0F, 0F); tooth5 = new ModelRenderer(this, 0, 0); tooth5.addBox(0F, 0F, 0F, 1, 4, 1); tooth5.setRotationPoint(-5F, 6F, -10F); tooth5.setTextureSize(64, 32); tooth5.mirror = true; setRotation(tooth5, 0F, 0F, 0F); tooth6 = new ModelRenderer(this, 0, 0); tooth6.addBox(0F, 0F, 0F, 1, 4, 1); tooth6.setRotationPoint(-2.5F, 6F, -12F); tooth6.setTextureSize(64, 32); tooth6.mirror = true; setRotation(tooth6, 0F, 0F, 0F); tooth7 = new ModelRenderer(this, 0, 0); tooth7.addBox(0F, 0F, 0F, 1, 4, 1); tooth7.setRotationPoint(-0.5F, 6F, -12F); tooth7.setTextureSize(64, 32); tooth7.mirror = true; setRotation(tooth7, 0F, 0F, 0F); tooth8 = new ModelRenderer(this, 0, 0); tooth8.addBox(0F, 0F, 0F, 1, 4, 1); tooth8.setRotationPoint(1.5F, 6F, -12F); tooth8.setTextureSize(64, 32); tooth8.mirror = true; setRotation(tooth8, 0F, 0F, 0F); tooth10 = new ModelRenderer(this, 0, 0); tooth10.addBox(0F, 0F, 0F, 1, 4, 1); tooth10.setRotationPoint(4F, 6F, -10F); tooth10.setTextureSize(64, 32); tooth10.mirror = true; setRotation(tooth10, 0F, 0F, 0F); tooth11 = new ModelRenderer(this, 0, 0); tooth11.addBox(0F, 0F, 0F, 1, 4, 1); tooth11.setRotationPoint(4F, 6F, -8F); tooth11.setTextureSize(64, 32); tooth11.mirror = true; setRotation(tooth11, 0F, 0F, 0F); tooth12 = new ModelRenderer(this, 0, 0); tooth12.addBox(0F, 0F, 0F, 1, 4, 1); tooth12.setRotationPoint(4F, 6F, -6F); tooth12.setTextureSize(64, 32); tooth12.mirror = true; setRotation(tooth12, 0F, 0F, 0F); tooth13 = new ModelRenderer(this, 0, 0); tooth13.addBox(0F, 0F, 0F, 1, 4, 1); tooth13.setRotationPoint(4F, 6F, -4F); tooth13.setTextureSize(64, 32); tooth13.mirror = true; setRotation(tooth13, 0F, 0F, 0F); tooth14 = new ModelRenderer(this, 0, 0); tooth14.addBox(0F, 0F, 0F, 1, 4, 1); tooth14.setRotationPoint(4F, 6F, -2F); tooth14.setTextureSize(64, 32); tooth14.mirror = true; setRotation(tooth14, 0F, 0F, 0F); head4 = new ModelRenderer(this, 43, 1); head4.addBox(0F, 0F, 0F, 8, 1, 9); head4.setRotationPoint(-4F, 3F, -9F); head4.setTextureSize(64, 32); head4.mirror = true; setRotation(head4, 0F, 0F, 0F); head5 = new ModelRenderer(this, 42, 13); head5.addBox(0F, 0F, 0F, 6, 1, 1); head5.setRotationPoint(-3F, 3F, -10F); head5.setTextureSize(64, 32); head5.mirror = true; setRotation(head5, 0F, 0F, 0F); head6 = new ModelRenderer(this, 42, 15); head6.addBox(0F, 0F, 0F, 4, 1, 1); head6.setRotationPoint(-2F, 3F, -11F); head6.setTextureSize(64, 32); head6.mirror = true; setRotation(head6, 0F, 0F, 0F); eye2 = new ModelRenderer(this, 0, 5); eye2.addBox(-1F, -2F, -1F, 2, 2, 2); eye2.setRotationPoint(-2F, 3F, -10F); eye2.setTextureSize(64, 32); eye2.mirror = true; setRotation(eye2, 0F, 0F, 0F); eye3 = new ModelRenderer(this, 0, 5); eye3.addBox(-1F, -2F, -1F, 2, 2, 2); eye3.setRotationPoint(2F, 3F, -10F); eye3.setTextureSize(64, 32); eye3.mirror = true; setRotation(eye3, 0F, 0F, 0F); head7 = new ModelRenderer(this, 46, 2); head7.addBox(0F, 0F, 0F, 6, 1, 8); head7.setRotationPoint(-3F, 2F, -8F); head7.setTextureSize(64, 32); head7.mirror = true; setRotation(head7, 0F, 0F, 0F); head8 = new ModelRenderer(this, 44, 13); head8.addBox(0F, 0F, 0F, 4, 1, 1); head8.setRotationPoint(-2F, 2F, -9F); head8.setTextureSize(64, 32); head8.mirror = true; setRotation(head8, 0F, 0F, 0F); eye7 = new ModelRenderer(this, 0, 5); eye7.addBox(-1F, -2F, -1F, 2, 2, 2); eye7.setRotationPoint(3F, 2F, -8F); eye7.setTextureSize(64, 32); eye7.mirror = true; setRotation(eye7, 0F, 0F, 0F); eye5 = new ModelRenderer(this, 0, 5); eye5.addBox(-1F, -2F, -1F, 2, 2, 2); eye5.setRotationPoint(-3F, 2F, -8F); eye5.setTextureSize(64, 32); eye5.mirror = true; setRotation(eye5, 0F, 0F, 0F); eye6 = new ModelRenderer(this, 0, 5); eye6.addBox(-1F, -2F, -1F, 2, 2, 2); eye6.setRotationPoint(0F, 2F, -8F); eye6.setTextureSize(64, 32); eye6.mirror = true; setRotation(eye6, 0F, 0F, 0F); eye4 = new ModelRenderer(this, 0, 5); eye4.addBox(-1F, -2F, -1F, 2, 2, 2); eye4.setRotationPoint(4F, 4F, -10F); eye4.setTextureSize(64, 32); eye4.mirror = true; setRotation(eye4, 0F, 0F, 0F); eye1 = new ModelRenderer(this, 0, 5); eye1.addBox(-1F, -2F, -1F, 2, 2, 2); eye1.setRotationPoint(-4F, 4F, -10F); eye1.setTextureSize(64, 32); eye1.mirror = true; setRotation(eye1, 0F, 0F, 0F); headtentbase = new ModelRenderer(this, 0, 33); headtentbase.addBox(0F, 0F, 0F, 3, 7, 3); headtentbase.setRotationPoint(-1.5F, -4F, -3F); headtentbase.setTextureSize(64, 32); headtentbase.mirror = true; setRotation(headtentbase, -0.2617994F, 0F, 0F); leftkneecap = new ModelRenderer(this, 18, 12); leftkneecap.addBox(0F, 0F, 0F, 4, 4, 4); leftkneecap.setRotationPoint(-0.4F,5,-2); leftkneecap.setTextureSize(64, 32); leftkneecap.mirror = true; setRotation(leftkneecap, 0F, 0F, 0.6981317F); leftleg1.addChild(leftkneecap); leftleg2 = new ModelRenderer(this, 12, 20); leftleg2.addBox(-1.5F, -1.5F, 0F, 3, 3, 6); leftleg2.setRotationPoint(2.1F,2,3.1F); leftleg2.setTextureSize(64, 32); leftleg2.mirror = true; setRotation(leftleg2, -0.5235988F, 0F, 0F); leftkneecap.addChild(leftleg2); leftleg3 = new ModelRenderer(this, 0, 19); leftleg3.addBox(-1.5F, 0F, -1.5F, 3, 7, 3); leftleg3.setRotationPoint(0,-0.7F,4.85F); leftleg3.setTextureSize(64, 32); leftleg3.mirror = true; setRotation(leftleg3, 0.5235988F, 0F, 0F); leftleg2.addChild(leftleg3); leftfoot1 = new ModelRenderer(this, 30, 21); leftfoot1.addBox(-1F, 0F, -1F, 2, 6, 2); leftfoot1.setRotationPoint(-1F,6,-0.5F); leftfoot1.setTextureSize(64, 32); leftfoot1.mirror = true; setRotation(leftfoot1, -0.5235988F, 0.5235988F, 0F); leftleg3.addChild(leftfoot1); leftfoot2 = new ModelRenderer(this, 30, 21); leftfoot2.addBox(-1F, 0F, -1F, 2, 6, 2); leftfoot2.setRotationPoint(1F,6,-0.5F); leftfoot2.setTextureSize(64, 32); leftfoot2.mirror = true; setRotation(leftfoot2, -0.5235988F, -0.5235988F, 0F); leftleg3.addChild(leftfoot2); leftfoot3 = new ModelRenderer(this, 30, 21); leftfoot3.addBox(-1F, 0F, -1F, 2, 6, 2); leftfoot3.setRotationPoint(0,6,0.5F); leftfoot3.setTextureSize(64, 32); leftfoot3.mirror = true; setRotation(leftfoot3, 0.5235988F, 0F, 0F); leftleg3.addChild(leftfoot3); rightkneecap = new ModelRenderer(this, 18, 12); rightkneecap.addBox(0F, 0F, 0F, 4, 4, 4); rightkneecap.setRotationPoint(-2.4F,8,-2); rightkneecap.setTextureSize(64, 32); rightkneecap.mirror = true; setRotation(rightkneecap, 0F, 0F, -0.6981317F); rightleg1.addChild(rightkneecap); rightleg2 = new ModelRenderer(this, 12, 20); rightleg2.addBox(-1.5F, -1.5F, 0F, 3, 3, 6); rightleg2.setRotationPoint(2F, 1.5F, 3.1F); rightleg2.setTextureSize(64, 32); rightleg2.mirror = true; setRotation(rightleg2, -0.5235988F, 0F, 0F); rightkneecap.addChild(rightleg2); rightleg3 = new ModelRenderer(this, 0, 19); rightleg3.addBox(-1.5F, 0F, -1.5F, 3, 7, 3); rightleg3.setRotationPoint(0,-0.7F,4.85F); rightleg3.setTextureSize(64, 32); rightleg3.mirror = true; setRotation(rightleg3, 0.5235988F, 0F, 0F); rightleg2.addChild(rightleg3); rightfoot1 = new ModelRenderer(this, 30, 21); rightfoot1.addBox(-1F, 0F, -1F, 2, 6, 2); rightfoot1.setRotationPoint(-1F,6,-0.5F); rightfoot1.setTextureSize(64, 32); rightfoot1.mirror = true; setRotation(rightfoot1, -0.5235988F, 0.5235988F, 0F); rightleg3.addChild(rightfoot1); rightfoot2 = new ModelRenderer(this, 30, 21); rightfoot2.addBox(-1F, 0F, -1F, 2, 6, 2); rightfoot2.setRotationPoint(1F,6,-0.5F); rightfoot2.setTextureSize(64, 32); rightfoot2.mirror = true; setRotation(rightfoot2, -0.5235988F, -0.5235988F, 0F); rightleg3.addChild(rightfoot2); rightfoot3 = new ModelRenderer(this, 30, 21); rightfoot3.addBox(-1F, 0F, -1F, 2, 6, 2); rightfoot3.setRotationPoint(0,6,0.5F); rightfoot3.setTextureSize(64, 32); rightfoot3.mirror = true; setRotation(rightfoot3, 0.5235988F, 0F, 0F); rightleg3.addChild(rightfoot3); tentacle1 = new ModelRenderer(this, 12, 33); tentacle1.addBox(-1.5F, -1.5F, 0F, 3, 3, 3); tentacle1.setRotationPoint(0F, -2.5F, -3F); tentacle1.setTextureSize(64, 32); tentacle1.mirror = true; setRotation(tentacle1, 0F, 0F, 0F); tentacle2 = new ModelRenderer(this, 12, 33); tentacle2.addBox(-1.5F, -1.5F, 0F, 3, 3, 3); tentacle2.setRotationPoint(0F, 0F, 3F); tentacle2.setTextureSize(64, 32); tentacle2.mirror = true; setRotation(tentacle2, 0F, 0F, 0F); tentacle1.addChild(tentacle2); tentacle3 = new ModelRenderer(this, 12, 33); tentacle3.addBox(-1.5F, -1.5F, 0F, 3, 3, 3); tentacle3.setRotationPoint(0F, 0F, 3F); tentacle3.setTextureSize(64, 32); tentacle3.mirror = true; setRotation(tentacle3, 0F, 0F, 0F); tentacle2.addChild(tentacle3); tentacle4 = new ModelRenderer(this, 12, 39); tentacle4.addBox(-1F, -1F, 0F, 2, 2, 2); tentacle4.setRotationPoint(0F, 0F, 3F); tentacle4.setTextureSize(64, 32); tentacle4.mirror = true; setRotation(tentacle4, 0F, 0F, 0F); tentacle3.addChild(tentacle4); tentacle5 = new ModelRenderer(this, 12, 39); tentacle5.addBox(-1F, -1F, 0F, 2, 2, 2); tentacle5.setRotationPoint(0F, 0F, 2F); tentacle5.setTextureSize(64, 32); tentacle5.mirror = true; setRotation(tentacle5, 0F, 0F, 0F); tentacle4.addChild(tentacle5); tentacle6 = new ModelRenderer(this, 12, 39); tentacle6.addBox(-1F, -1F, 0F, 2, 2, 2); tentacle6.setRotationPoint(0F, 0F, 2F); tentacle6.setTextureSize(64, 32); tentacle6.mirror = true; setRotation(tentacle6, 0F, 0F, 0F); tentacle5.addChild(tentacle6); tentacle7 = new ModelRenderer(this, 20, 39); tentacle7.addBox(-0.5F, -0.5F, 0F, 1, 1, 1); tentacle7.setRotationPoint(0F, 0F, 2F); tentacle7.setTextureSize(64, 32); tentacle7.mirror = true; setRotation(tentacle7, 0F, 0F, 0F); tentacle6.addChild(tentacle7); tentacle8 = new ModelRenderer(this, 20, 39); tentacle8.addBox(-0.5F, -0.5F, 0F, 1, 1, 1); tentacle8.setRotationPoint(0F, 0F, 1F); tentacle8.setTextureSize(64, 32); tentacle8.mirror = true; setRotation(tentacle8, 0F, 0F, 0F); tentacle7.addChild(tentacle8); tentacle9 = new ModelRenderer(this, 20, 39); tentacle9.addBox(-0.5F, -0.5F, 0F, 1, 1, 1); tentacle9.setRotationPoint(0F, 0F, 1F); tentacle9.setTextureSize(64, 32); tentacle9.mirror = true; setRotation(tentacle9, 0F, 0F, 0F); tentacle8.addChild(tentacle9); body2 = new ModelRenderer(this, 72, 23); body2.addBox(0F, 0F, 0F, 16, 22, 10); body2.setRotationPoint(-8F, 2F, 12F); body2.setTextureSize(64, 32); body2.mirror = true; setRotation(body2, 0F, 0F, 0F); eye8 = new ModelRenderer(this, 0, 5); eye8.addBox(-1F, -2F, -1F, 2, 2, 2); eye8.setRotationPoint(0F, -1F, -3.5F); eye8.setTextureSize(64, 32); eye8.mirror = true; setRotation(eye8, 0F, 0F, 0F); body3 = new ModelRenderer(this, 40, 35); body3.addBox(0F, 0F, 0F, 8, 12, 8); body3.setRotationPoint(5F, 12F, 16F); body3.setTextureSize(64, 32); body3.mirror = true; setRotation(body3, 0F, -0.5235988F, 0F); body5 = new ModelRenderer(this, 40, 35); body5.addBox(0F, 0F, 0F, 8, 12, 8); body5.setRotationPoint(-5F, 12F, 16F); body5.setTextureSize(64, 32); body5.mirror = true; setRotation(body5, 0F, -1.047198F, 0F); body4 = new ModelRenderer(this, 40, 35); body4.addBox(0F, 0F, 0F, 8, 12, 8); body4.setRotationPoint(-4F, 12F, 18F); body4.setTextureSize(64, 32); body4.mirror = true; setRotation(body4, 0F, 0F, 0F); body6 = new ModelRenderer(this, 44, 27); body6.addBox(0F, 0F, 0F, 12, 6, 2); body6.setRotationPoint(-6F, 6F, 22F); body6.setTextureSize(64, 32); body6.mirror = true; setRotation(body6, 0F, 0F, 0F); jaw5 = new ModelRenderer(this, 0, 13); jaw5.addBox(0F, 0F, 0F, 6, 1, 1); jaw5.setRotationPoint(-3F, 13F, -10F); jaw5.setTextureSize(64, 32); jaw5.mirror = true; setRotation(jaw5, 0F, 0F, 0F); jaw4 = new ModelRenderer(this, 2, 42); jaw4.addBox(0F, 0F, 0F, 8, 1, 21); jaw4.setRotationPoint(-4F, 13F, -9F); jaw4.setTextureSize(64, 32); jaw4.mirror = true; setRotation(jaw4, 0F, 0F, 0F); spike4 = new ModelRenderer(this, 0, 44); spike4.addBox(0F, -5F, 0F, 1, 6, 1); spike4.setRotationPoint(4F, 2F, 15F); spike4.setTextureSize(64, 32); spike4.mirror = true; setRotation(spike4, -0.8179294F, 0F, 0F); spike3 = new ModelRenderer(this, 0, 44); spike3.addBox(0F, -6F, 0F, 1, 6, 1); spike3.setRotationPoint(-5F, 2F, 16F); spike3.setTextureSize(64, 32); spike3.mirror = true; setRotation(spike3, -0.7807508F, 0F, 0F); spike2 = new ModelRenderer(this, 0, 44); spike2.addBox(0F, -6F, 0F, 1, 6, 1); spike2.setRotationPoint(3F, 2F, 8F); spike2.setTextureSize(64, 32); spike2.mirror = true; setRotation(spike2, -0.9666439F, 0F, 0F); spike1 = new ModelRenderer(this, 0, 44); spike1.addBox(0F, -6F, 0F, 1, 6, 1); spike1.setRotationPoint(-3F, 2F, 5F); spike1.setTextureSize(64, 32); spike1.mirror = true; setRotation(spike1, -0.8551081F, 0F, 0F); buldge1 = new ModelRenderer(this, 0, 52); buldge1.addBox(0F, 0F, 0F, 2, 2, 2); buldge1.setRotationPoint(6F, 5F, 8F); buldge1.setTextureSize(64, 32); buldge1.mirror = true; setRotation(buldge1, 0F, 0F, 0F); buldge5 = new ModelRenderer(this, 0, 52); buldge5.addBox(0F, 0F, 0F, 2, 2, 2); buldge5.setRotationPoint(-8F, 7F, 8F); buldge5.setTextureSize(64, 32); buldge5.mirror = true; setRotation(buldge5, 0F, 0F, 0F); buldge2 = new ModelRenderer(this, 0, 52); buldge2.addBox(0F, 0F, 0F, 2, 2, 2); buldge2.setRotationPoint(8F, 10F, 19F); buldge2.setTextureSize(64, 32); buldge2.mirror = true; setRotation(buldge2, 0F, 0F, 0F); buldge3 = new ModelRenderer(this, 0, 52); buldge3.addBox(0F, 0F, 0F, 2, 2, 2); buldge3.setRotationPoint(-3F, 7F, 24F); buldge3.setTextureSize(64, 32); buldge3.mirror = true; setRotation(buldge3, 0F, 0F, 0F); buldge4 = new ModelRenderer(this, 0, 52); buldge4.addBox(0F, 0F, 0F, 2, 2, 2); buldge4.setRotationPoint(-10F, 10F, 20F); buldge4.setTextureSize(64, 32); buldge4.mirror = true; setRotation(buldge4, 0F, 0F, 0F); } @Override public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) { super.render(par1Entity, par2, par3, par4, par5, par6, par7); setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity); if(isChild){ jaw1.render(par7); head1.render(par7); body1.render(par7); tooth1.render(par7); head2.render(par7); head3.render(par7); rightleg1.render(par7); leftleg1.render(par7); jaw2.render(par7); jaw3.render(par7); tooth2.render(par7); tooth3.render(par7); tooth4.render(par7); tooth5.render(par7); tooth6.render(par7); tooth7.render(par7); tooth8.render(par7); tooth10.render(par7); tooth11.render(par7); tooth12.render(par7); tooth13.render(par7); tooth14.render(par7); head4.render(par7); head5.render(par7); head6.render(par7); eye2.render(par7); eye3.render(par7); head7.render(par7); head8.render(par7); eye7.render(par7); eye5.render(par7); eye6.render(par7); eye4.render(par7); eye1.render(par7); headtentbase.render(par7); tentacle1.render(par7); body2.render(par7); eye8.render(par7); body3.render(par7); body5.render(par7); body4.render(par7); body6.render(par7); jaw5.render(par7); jaw4.render(par7); spike4.render(par7); spike3.render(par7); spike2.render(par7); spike1.render(par7); buldge1.render(par7); buldge5.render(par7); buldge2.render(par7); buldge3.render(par7); buldge4.render(par7); } else { GlStateManager.pushMatrix(); GlStateManager.scale(1.5F, 1.5F, 1.5F); GlStateManager.translate(0.0F, -8.0F * par7, -0.5F); jaw1.render(par7); head1.render(par7); body1.render(par7); tooth1.render(par7); head2.render(par7); head3.render(par7); rightleg1.render(par7); leftleg1.render(par7); jaw2.render(par7); jaw3.render(par7); tooth2.render(par7); tooth3.render(par7); tooth4.render(par7); tooth5.render(par7); tooth6.render(par7); tooth7.render(par7); tooth8.render(par7); tooth10.render(par7); tooth11.render(par7); tooth12.render(par7); tooth13.render(par7); tooth14.render(par7); head4.render(par7); head5.render(par7); head6.render(par7); eye2.render(par7); eye3.render(par7); head7.render(par7); head8.render(par7); eye7.render(par7); eye5.render(par7); eye6.render(par7); eye4.render(par7); eye1.render(par7); headtentbase.render(par7); tentacle1.render(par7); body2.render(par7); eye8.render(par7); body3.render(par7); body5.render(par7); body4.render(par7); body6.render(par7); jaw5.render(par7); jaw4.render(par7); spike4.render(par7); spike3.render(par7); spike2.render(par7); spike1.render(par7); buldge1.render(par7); buldge5.render(par7); buldge2.render(par7); buldge3.render(par7); buldge4.render(par7); GlStateManager.popMatrix(); } } private void setRotation(ModelRenderer model, float x, float y, float z) { model.rotateAngleX = x; model.rotateAngleY = y; model.rotateAngleZ = z; } @Override public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity) { eye1.rotateAngleY = f3 / (180F / (float)Math.PI); eye1.rotateAngleX = f4 / (180F / (float)Math.PI); eye2.rotateAngleY = f3 / (180F / (float)Math.PI); eye2.rotateAngleX = f4 / (180F / (float)Math.PI); eye3.rotateAngleY = f3 / (180F / (float)Math.PI); eye3.rotateAngleX = f4 / (180F / (float)Math.PI); eye4.rotateAngleY = f3 / (180F / (float)Math.PI); eye4.rotateAngleX = f4 / (180F / (float)Math.PI); eye5.rotateAngleY = f3 / (180F / (float)Math.PI); eye5.rotateAngleX = f4 / (180F / (float)Math.PI); eye6.rotateAngleY = f3 / (180F / (float)Math.PI); eye6.rotateAngleX = f4 / (180F / (float)Math.PI); eye7.rotateAngleY = f3 / (180F / (float)Math.PI); eye7.rotateAngleX = f4 / (180F / (float)Math.PI); eye8.rotateAngleY = f3 / (180F / (float)Math.PI); eye8.rotateAngleX = f4 / (180F / (float)Math.PI); rightleg1.rotateAngleX = MathHelper.cos(f * 0.6662F) * 1.4F * f1; rightleg1.rotateAngleY = 0.0F; leftleg1.rotateAngleX = MathHelper.cos(f * 0.6662F + (float)Math.PI) * 1.4F * f1; leftleg1.rotateAngleY = 0.0F; float f16 = 0.02F * (entity.getEntityId() % 10); tentacle1.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle2.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle3.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle4.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle5.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle6.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle7.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle8.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; tentacle9.rotateAngleY = MathHelper.sin(entity.ticksExisted * f16) * 4.5F * (float)Math.PI / 180.0F; body3.rotateAngleZ = MathHelper.sin(entity.ticksExisted * f16) * 2.5F * (float)Math.PI / 180.0F; body4.rotateAngleX = MathHelper.sin(entity.ticksExisted * f16) * 2.5F * (float)Math.PI / 180.0F; body5.rotateAngleZ = -MathHelper.sin(entity.ticksExisted * f16) * 2.5F * (float)Math.PI / 180.0F; } }