Jump to content

NovaViper

Forge Modder
  • Posts

    1061
  • Joined

  • Last visited

Everything posted by NovaViper

  1. Question about this: protected int cycleIndex = 0; protected float[][] undulationCycle = new float[][] { { 45F, -45F, -45F, 0F, 45F, 45F, 0F, -45F }, { 0F, 45F, -45F, -45F, 0F, 45F, 45F, 0F }, { -45F, 90F, 0F, -45F, -45F, 0F, 45F, 45F }, { -45F, 45F, 45F, 0F, -45F, -45F, 0F, 45F }, { 0F, -45F, 45F, 45F, 0F, -45F, -45F, 0F }, { 45F, -90F, 0F, 45F, 45F, 0F, -45F, -45F }, }; So that is the animation array correct?
  2. Also, I'm having a bit of trouble making the mouth constantly move up and down, to make it look like it's breathing. But just very slightly and then open it's mouth all the way when it plays a sound, like growl and bark for instance. I'm not sure how to configure the rotation methods that i'm using to achieve this, here is my code: package common.zeroquest.client.renderer.entity.model; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.util.MathHelper; import common.zeroquest.entity.EntityZertumEntity; public class ModelZertum extends ModelBase { //fields ModelRenderer RightEarPart1; ModelRenderer RightEarPart2; ModelRenderer RightEarPart3; ModelRenderer LeftEarPart1; ModelRenderer LeftEarPart2; ModelRenderer LeftEarPart3; ModelRenderer LeftBottomJaw; ModelRenderer BottomJawPart1; ModelRenderer BottomJawPart2; ModelRenderer BottomJawCenter; ModelRenderer LeftTopTeeth; ModelRenderer LeftTopJaw; ModelRenderer LeftBottomTeeth; ModelRenderer RightTopTeeth; ModelRenderer RightBottomTeeth; ModelRenderer TopJawPart1; ModelRenderer TopJawPart2; ModelRenderer TopJawCenter; ModelRenderer RightTopJaw; ModelRenderer RightBottomJaw; ModelRenderer Throat; ModelRenderer UpSection; ModelRenderer MidSection; ModelRenderer Pelvis; ModelRenderer TailPart1; ModelRenderer TailPart2; ModelRenderer TailPart3; ModelRenderer LeftHumerus; ModelRenderer LeftRadius; ModelRenderer LeftFClawRPart1; ModelRenderer LeftFClawRPart2; ModelRenderer LeftFClawMPart1; ModelRenderer LeftFClawMPart2; ModelRenderer LeftFClawLPart2; ModelRenderer LeftFClawLPart1; ModelRenderer RightHumerus; ModelRenderer RightRadius; ModelRenderer RightFClawRPart1; ModelRenderer RightFClawRPart2; ModelRenderer RightFClawMPart1; ModelRenderer RightFClawMPart2; ModelRenderer RightFClawLPart1; ModelRenderer RightFClawLPart2; ModelRenderer LeftFemur; ModelRenderer LeftTibia; ModelRenderer LeftMetatarsus; ModelRenderer LeftClawLPart1; ModelRenderer LeftClawLPart2; ModelRenderer LeftClawRPart1; ModelRenderer LeftClawRPart2; ModelRenderer LeftClawMPart1; ModelRenderer LeftClawMPart2; ModelRenderer RightFemur; ModelRenderer RightTibia; ModelRenderer RightMetatarsus; ModelRenderer RightClawRPart1; ModelRenderer RightClawRPart2; ModelRenderer RightClawMPart1; ModelRenderer RightClawMPart2; ModelRenderer RightClawLPart1; ModelRenderer RightClawLPart2; public ModelZertum() { textureWidth = 256; textureHeight = 128; //Ears\\ RightEarPart1 = new ModelRenderer(this, 18, 60); RightEarPart1.addBox(-1F, -1F, -1F, 1, 1, 4); RightEarPart1.setRotationPoint(-1.5F, 1.5F, -5F); setRotation(RightEarPart1, 0.0346075F, -0.3346075F, 0F); RightEarPart2 = new ModelRenderer(this, 15, 66); RightEarPart2.addBox(-1F, -1F, 0F, 2, 2, 6); RightEarPart2.setRotationPoint(-0.5F, -0.5F, 0F); setRotation(RightEarPart2, 0.3346075F, -0.0346075F, 0F); RightEarPart3 = new ModelRenderer(this, 16, 75); RightEarPart3.addBox(-0.5F, -0.5F, 0F, 1, 1, 6); RightEarPart3.setRotationPoint(-0.5F, 0F, 4F); setRotation(RightEarPart3, 0.0346075F, 0.4115358F, 0.0743572F); LeftEarPart1 = new ModelRenderer(this, 18, 60); LeftEarPart1.addBox(-1F, -1F, -1F, 1, 1, 4); LeftEarPart1.setRotationPoint(3.5F, 1.5F, -5F); setRotation(LeftEarPart1, 0.3346075F, 0.3346145F, 0F); LeftEarPart2 = new ModelRenderer(this, 15, 66); LeftEarPart2.addBox(-1F, -1F, 0F, 2, 2, 6); LeftEarPart2.setRotationPoint(-0.5F, -0.5F, 0F); setRotation(LeftEarPart2, 0.0346075F, 0.0346145F, 0F); LeftEarPart3 = new ModelRenderer(this, 16, 75); LeftEarPart3.addBox(-0.5F, -0.5F, 0F, 1, 1, 6); LeftEarPart3.setRotationPoint(0.5F, 0F, 4F); setRotation(LeftEarPart3, 0.0346145F, -0.411544F, -0.074351F); //Top Jaw\\ TopJawCenter = new ModelRenderer(this, 56, 38); TopJawCenter.addBox(-0.5F, 0F, -7.4F, 2, 1, ; TopJawCenter.setRotationPoint(0.5F, -4F, -8F); setRotation(TopJawCenter, 0.0587144F, 0F, 0F); LeftTopJaw = new ModelRenderer(this, 39, 50); LeftTopJaw.addBox(0F, 0F, -9F, 1, 2, 9); LeftTopJaw.setRotationPoint(3F, 0F, 0F); setRotation(LeftTopJaw, 0F, 0.3346075F, 0F); LeftTopTeeth = new ModelRenderer(this, 61, 50); LeftTopTeeth.addBox(0.5F, 0F, -9.3F, 0, 1, 5); LeftTopTeeth.setRotationPoint(0F, 2F, 0F); setRotation(LeftTopTeeth, 0F, -0.0346145F, 0F); RightTopJaw = new ModelRenderer(this, 39, 63); RightTopJaw.addBox(-1F, 0F, -9F, 1, 2, 9); RightTopJaw.setRotationPoint(-2F, 0F, 0F); setRotation(RightTopJaw, 0F, -0.3346075F, 0F); RightTopTeeth = new ModelRenderer(this, 61, 50); RightTopTeeth.addBox(-0.5F, 0F, -9.3F, 0, 1, 5); RightTopTeeth.setRotationPoint(0F, 2F, 0F); setRotation(RightTopTeeth, 0F, 0.0346075F, 0F); TopJawPart1 = new ModelRenderer(this, 38, 40); TopJawPart1.addBox(-1F, 0F, -5.7F, 2, 1, 6); TopJawPart1.setRotationPoint(-1F, 0F, 0F); setRotation(TopJawPart1, 0F, -0.3346075F, 0F); TopJawPart2 = new ModelRenderer(this, 38, 40); TopJawPart2.addBox(-1F, 0F, -5.7F, 2, 1, 6); TopJawPart2.setRotationPoint(2F, 0F, 0F); setRotation(TopJawPart2, 0F, 0.3346145F, 0F); //BottomJaw\\ BottomJawCenter = new ModelRenderer(this, 0, 109); BottomJawCenter.addBox(-0.5F, 0F, -7.2F, 2, 1, ; BottomJawCenter.setRotationPoint(0.5F, 1F, -8F); setRotation(BottomJawCenter, 0.1587144F, 0F, 0F); LeftBottomJaw = new ModelRenderer(this, 0, 84); LeftBottomJaw.addBox(0F, 0F, -9F, 1, 2, 9); LeftBottomJaw.setRotationPoint(3F, -1.1F, 0F); setRotation(LeftBottomJaw, 0.1487144F, 0.3346075F, 0F); LeftBottomTeeth = new ModelRenderer(this, 21, 93); LeftBottomTeeth.addBox(0.5F, 0F, -9.3F, 0, 1, 5); LeftBottomTeeth.setRotationPoint(0.5F, -2.2F, 0F); setRotation(LeftBottomTeeth, 0.1487144F, 0.0346145F, 0F); RightBottomJaw = new ModelRenderer(this, 0, 97); RightBottomJaw.addBox(-1F, 0F, -9F, 1, 2, 9); RightBottomJaw.setRotationPoint(-2F, -1.1F, 0F); setRotation(RightBottomJaw, 0.1487144F, -0.3346075F, 0F); RightBottomTeeth = new ModelRenderer(this, 21, 93); RightBottomTeeth.addBox(-0.5F, 0F, -9.3F, 0, 1, 5); RightBottomTeeth.setRotationPoint(-0.5F, -2.1F, 0F); setRotation(RightBottomTeeth, 0.1487144F, -0.0346075F, 0F); BottomJawPart1 = new ModelRenderer(this, 21, 84); BottomJawPart1.addBox(-1F, 0F, -6.5F, 2, 1, 7); BottomJawPart1.setRotationPoint(-1F, 0F, 0F); setRotation(BottomJawPart1, 0.1487144F, -0.3346075F, 0F); BottomJawPart2 = new ModelRenderer(this, 21, 84); BottomJawPart2.addBox(-1F, 0F, -6.5F, 2, 1, 7); BottomJawPart2.setRotationPoint(2F, 0F, 0F); setRotation(BottomJawPart2, 0.1487144F, 0.3346075F, 0F); Throat = new ModelRenderer(this, 0, 0); Throat.addBox(-2F, -3F, -9F, 6, 5, 6); Throat.setRotationPoint(0.5F, 7.7F, -11F); setRotation(Throat, -0.2288904F, 0F, 0F); UpSection = new ModelRenderer(this, 25, 0); UpSection.addBox(-2F, -2.5F, -9F, 7, 7, ; UpSection.setRotationPoint(-0.5F, -0.5F, 2F); setRotation(UpSection, -0.1917118F, 0F, 0F); MidSection = new ModelRenderer(this, 56, 0); MidSection.addBox(-2F, -2.5F, 0F, 6, 6, 9); MidSection.setRotationPoint(0.5F, 7.5F, -8F); setRotation(MidSection, -0.0429974F, 0F, 0F); Pelvis = new ModelRenderer(this, 87, 0); Pelvis.addBox(-2F, -2.5F, 0F, 6, 6, 7); Pelvis.setRotationPoint(0F, 0F, 8F); setRotation(Pelvis, 0F, 0F, 0F); TailPart1 = new ModelRenderer(this, 114, 0); TailPart1.addBox(-1F, -1F, 0F, 2, 2, 11); TailPart1.setRotationPoint(1.5F, 7F, 6F); setRotation(TailPart1, -0.3346075F, 0F, 0F); TailPart2 = new ModelRenderer(this, 141, 0); TailPart2.addBox(-1F, -1F, 0F, 2, 2, 11); TailPart2.setRotationPoint(0F, -0.2F, 10.5F); setRotation(TailPart2, -0.3948578F, 0F, 0F); TailPart3 = new ModelRenderer(this, 168, 0); TailPart3.addBox(-1F, -1F, 0F, 2, 2, 11); TailPart3.setRotationPoint(0F, 0F, 10.8F); setRotation(TailPart3, 0.2974289F, 0F, 0F); LeftHumerus = new ModelRenderer(this, 39, 16); LeftHumerus.addBox(0F, 0F, 0F, 3, 10, 4); LeftHumerus.setRotationPoint(3F, 4.7F, -12F); setRotation(LeftHumerus, 0.3869765F, 0F, 0F); LeftRadius = new ModelRenderer(this, 71, 16); LeftRadius.addBox(0F, 0F, 0F, 3, 11, 4); LeftRadius.setRotationPoint(0F, 8.0F, 0.45F); setRotation(LeftRadius, -0.3869765F, 0F, 0F); LeftFClawRPart1 = new ModelRenderer(this, 0, 58); LeftFClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftFClawRPart1.setRotationPoint(0F, 9.7F, 0F); setRotation(LeftFClawRPart1, 0F, 0.5159687F, 0F); LeftFClawRPart2 = new ModelRenderer(this, 5, 58); LeftFClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftFClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftFClawRPart2, 1.16093F, 0.0259717F, 0F); LeftFClawMPart1 = new ModelRenderer(this, 0, 58); LeftFClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftFClawMPart1.setRotationPoint(1.5F, 9.7F, 0F); setRotation(LeftFClawMPart1, 0F, 0F, 0F); LeftFClawMPart2 = new ModelRenderer(this, 5, 58); LeftFClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftFClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftFClawMPart2, 1.16093F, 0F, 0F); LeftFClawLPart1 = new ModelRenderer(this, 0, 58); LeftFClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftFClawLPart1.setRotationPoint(3F, 9.7F, 0F); setRotation(LeftFClawLPart1, 0F, -0.5159717F, 0F); LeftFClawLPart2 = new ModelRenderer(this, 5, 58); LeftFClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftFClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftFClawLPart2, 1.16093F, -0.0059717F, 0F); RightHumerus = new ModelRenderer(this, 55, 16); RightHumerus.addBox(-3F, 0F, 0F, 3, 10, 4); RightHumerus.setRotationPoint(0F, 4.7F, -12F); setRotation(RightHumerus, 0.3869765F, 0F, 0F); RightRadius = new ModelRenderer(this, 71, 16); RightRadius.addBox(-3F, 0F, 0F, 3, 11, 4); RightRadius.setRotationPoint(0F, 8.0F, 0.45F); setRotation(RightRadius, -0.3869765F, 0F, 0F); RightFClawRPart1 = new ModelRenderer(this, 0, 58); RightFClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightFClawRPart1.setRotationPoint(-3F, 9.7F, 0F); setRotation(RightFClawRPart1, 0F, 0.5159687F, 0F); RightFClawRPart2 = new ModelRenderer(this, 5, 58); RightFClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightFClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightFClawRPart2, 1.16093F, 0.0259717F, 0F); RightFClawMPart1 = new ModelRenderer(this, 0, 58); RightFClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightFClawMPart1.setRotationPoint(-1.5F, 9.7F, 0F); setRotation(RightFClawMPart1, 0F, 0F, 0F); RightFClawMPart2 = new ModelRenderer(this, 5, 58); RightFClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightFClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightFClawMPart2, 1.16093F, 0F, 0F); RightFClawLPart1 = new ModelRenderer(this, 0, 58); RightFClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightFClawLPart1.setRotationPoint(0F, 9.7F, 0F); setRotation(RightFClawLPart1, 0F, -0.5159717F, 0F); RightFClawLPart2 = new ModelRenderer(this, 5, 58); RightFClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightFClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightFClawLPart2, 1.16093F, -0.0059717F, 0F); LeftFemur = new ModelRenderer(this, 19, 16); LeftFemur.addBox(0F, 0F, 0F, 3, 8, 6); LeftFemur.setRotationPoint(3F, 5.7F, 0F); setRotation(LeftFemur, 0F, 0F, 0F); LeftTibia = new ModelRenderer(this, 0, 31); LeftTibia.addBox(0F, 0F, 0F, 3, 3, 9); LeftTibia.setRotationPoint(0F, 7.7F, 0F); setRotation(LeftTibia, 0F, 0F, 0F); LeftMetatarsus = new ModelRenderer(this, 0, 44); LeftMetatarsus.addBox(0F, 0F, 0F, 3, 10, 3); LeftMetatarsus.setRotationPoint(0F, -0.02F, 8F); setRotation(LeftMetatarsus, -0.1289922F, 0F, 0F); LeftClawRPart1 = new ModelRenderer(this, 0, 58); LeftClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftClawRPart1.setRotationPoint(0F, 9F, 0F); setRotation(LeftClawRPart1, 0F, 0.5159687F, 0F); LeftClawRPart2 = new ModelRenderer(this, 5, 58); LeftClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftClawRPart2, 1.16093F, -0.0259717F, 0F); LeftClawMPart1 = new ModelRenderer(this, 0, 58); LeftClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftClawMPart1.setRotationPoint(1.5F, 9F, 0F); setRotation(LeftClawMPart1, 0F, 0F, 0F); LeftClawMPart2 = new ModelRenderer(this, 5, 58); LeftClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftClawMPart2, 1.16093F, 0F, 0F); LeftClawLPart1 = new ModelRenderer(this, 0, 58); LeftClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftClawLPart1.setRotationPoint(3F, 9F, 0F); setRotation(LeftClawLPart1, 0F, -0.5159687F, 0F); LeftClawLPart2 = new ModelRenderer(this, 5, 58); LeftClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftClawLPart2, 1.16093F, 0.0059717F, 0F); RightFemur = new ModelRenderer(this, 0, 16); RightFemur.addBox(-2F, 0F, 0F, 3, 8, 6); RightFemur.setRotationPoint(-1F, 5.7F, 0F); setRotation(RightFemur, 0F, 0F, 0F); RightTibia = new ModelRenderer(this, 0, 31); RightTibia.addBox(-2F, 0F, 0F, 3, 3, 9); RightTibia.setRotationPoint(0F, 7.7F, 0F); setRotation(RightTibia, 0F, 0F, 0F); RightMetatarsus = new ModelRenderer(this, 0, 44); RightMetatarsus.addBox(-2F, 0F, 0F, 3, 10, 3); RightMetatarsus.setRotationPoint(0F, -0.02F, 8F); setRotation(RightMetatarsus, -0.1289922F, 0F, 0F); RightClawRPart1 = new ModelRenderer(this, 0, 58); RightClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightClawRPart1.setRotationPoint(-3F, 9F, 0F); setRotation(RightClawRPart1, 0F, 0.5159687F, 0F); RightClawRPart2 = new ModelRenderer(this, 5, 58); RightClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightClawRPart2, 1.16093F, -0.0259717F, 0F); RightClawMPart1 = new ModelRenderer(this, 0, 58); RightClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightClawMPart1.setRotationPoint(-1.5F, 9F, 0F); setRotation(RightClawMPart1, 0F, 0F, 0F); RightClawMPart2 = new ModelRenderer(this, 5, 58); RightClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightClawMPart2, 1.16093F, 0F, 0F); RightClawLPart1 = new ModelRenderer(this, 0, 58); RightClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightClawLPart1.setRotationPoint(0F, 9F, 0F); setRotation(RightClawLPart1, 0F, -0.5159717F, 0F); RightClawLPart2 = new ModelRenderer(this, 5, 58); RightClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightClawLPart2, 1.16093F, 0.0059717F, 0F); //Head\\ this.Throat.addChild(TopJawCenter); this.Throat.addChild(BottomJawCenter); this.TopJawCenter.addChild(LeftEarPart1); this.TopJawCenter.addChild(RightEarPart1); this.TopJawCenter.addChild(TopJawPart1); this.TopJawCenter.addChild(TopJawPart2); this.TopJawCenter.addChild(LeftTopJaw); this.TopJawCenter.addChild(RightTopJaw); this.TopJawCenter.addChild(RightTopJaw); this.LeftTopJaw.addChild(LeftTopTeeth); this.RightTopJaw.addChild(RightTopTeeth); this.LeftEarPart1.addChild(LeftEarPart2); this.LeftEarPart2.addChild(LeftEarPart3); this.RightEarPart1.addChild(RightEarPart2); this.RightEarPart2.addChild(RightEarPart3); this.BottomJawCenter.addChild(BottomJawPart1); this.BottomJawCenter.addChild(BottomJawPart2); this.BottomJawCenter.addChild(LeftBottomJaw); this.BottomJawCenter.addChild(RightBottomJaw); this.LeftBottomJaw.addChild(LeftBottomTeeth); this.RightBottomJaw.addChild(RightBottomTeeth); //Torso\\ this.MidSection.addChild(Pelvis); this.MidSection.addChild(UpSection); //Front Legs\\ this.LeftHumerus.addChild(LeftRadius); this.LeftRadius.addChild(LeftFClawLPart1); this.LeftRadius.addChild(LeftFClawMPart1); this.LeftRadius.addChild(LeftFClawRPart1); this.LeftFClawLPart1.addChild(LeftFClawLPart2); this.LeftFClawMPart1.addChild(LeftFClawMPart2); this.LeftFClawRPart1.addChild(LeftFClawRPart2); this.RightHumerus.addChild(RightRadius); this.RightRadius.addChild(RightFClawLPart1); this.RightRadius.addChild(RightFClawMPart1); this.RightRadius.addChild(RightFClawRPart1); this.RightFClawLPart1.addChild(RightFClawLPart2); this.RightFClawMPart1.addChild(RightFClawMPart2); this.RightFClawRPart1.addChild(RightFClawRPart2); //Back Legs\\\ this.LeftFemur.addChild(LeftTibia); this.LeftTibia.addChild(LeftMetatarsus); this.LeftMetatarsus.addChild(LeftClawLPart1); this.LeftMetatarsus.addChild(LeftClawMPart1); this.LeftMetatarsus.addChild(LeftClawRPart1); this.LeftClawLPart1.addChild(LeftClawLPart2); this.LeftClawMPart1.addChild(LeftClawMPart2); this.LeftClawRPart1.addChild(LeftClawRPart2); this.RightFemur.addChild(RightTibia); this.RightTibia.addChild(RightMetatarsus); this.RightMetatarsus.addChild(RightClawLPart1); this.RightMetatarsus.addChild(RightClawMPart1); this.RightMetatarsus.addChild(RightClawRPart1); this.RightClawLPart1.addChild(RightClawLPart2); this.RightClawMPart1.addChild(RightClawMPart2); this.RightClawRPart1.addChild(RightClawRPart2); //Tail\\ this.TailPart1.addChild(TailPart2); this.TailPart2.addChild(TailPart3); } public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { super.render(entity, f, f1, f2, f3, f4, f5); setRotationAngles(f, f1, f2, f3, f4, f5, entity); Throat.render(f5); MidSection.render(f5); TailPart1.render(f5); LeftHumerus.render(f5); RightHumerus.render(f5); LeftFemur.render(f5); RightFemur.render(f5); } private void setRotation(ModelRenderer model, float x, float y, float z) { model.rotateAngleX = x; model.rotateAngleY = y; model.rotateAngleZ = z; } @Override public void setLivingAnimations(EntityLivingBase par1EntityLivingBase, float par2, float par3, float par4) { EntityZertumEntity entityzertum = (EntityZertumEntity)par1EntityLivingBase; float f11 = entityzertum.func_110201_q(par4); this.RightHumerus.rotateAngleX = 0.3869765F + MathHelper.cos(par2 * 0.6662F) * 1.4F * par3; this.LeftHumerus.rotateAngleX = 0.3869765F + MathHelper.cos(par2 * 0.6662F + (float)Math.PI) * 1.4F * par3; this.RightFemur.rotateAngleX = MathHelper.cos(par2 * 0.6662F) * 1.4F * par3; this.LeftFemur.rotateAngleX = MathHelper.cos(par2 * 0.6662F + (float)Math.PI) * 1.4F * par3; this.TopJawCenter.rotateAngleX = 0.0587144F - 0.45707964F * f11; this.BottomJawCenter.rotateAngleX = 0.1587144F + 0.45707964F * f11; } @Override public void setRotationAngles(float par1, float par2, float par3, float par4, float par5, float par6, Entity par7Entity) { super.setRotationAngles(par1, par2, par3, par4, par5, par6, par7Entity); } }
  3. I'm trying to make my new entity move it's legs similar to a dog but, so far i'm getting an animation where it looks like this when it moves: http://i1319.photobucket.com/albums/t661/Nova_Leary/2015-03-28_10.43.01_zps16xxbka5.png[/img] http://i1319.photobucket.com/albums/t661/Nova_Leary/2015-03-28_10.46.37_zpsyfkldfif.png[/img] I can't figure out how to achieve a movement similar to this this when walking: Or this when running:
  4. Hey, I need help trying to render a texture for one model, and another for another model; all under the same class file but with different methods that tell it to switch between the two. So far, I got the main textures to switch but the collar textures doesn't switch and gives a result like this: http://i1319.photobucket.com/albums/t661/Nova_Leary/2015-03-28_10.26.51_zpsyol0tc56.png[/img] Instead of this: http://i1319.photobucket.com/albums/t661/Nova_Leary/Untitled6_zps1uhu3mxr.png[/img] Basically, I have 2 different versions of this entity (the pictures are its evolved form), it's wild and tamed devolved form are these: Tamed: http://vignette1.wikia.nocookie.net/zeroquest/images/8/8b/ZertumRedesign.png/revision/latest/scale-to-width/212?cb=20141026032739[/img] Wild http://vignette4.wikia.nocookie.net/zeroquest/images/b/bf/2014-10-28_18.42.46.png/revision/latest/scale-to-width/212?cb=20141029012529[/img] And the two before these two are the evolved forms. What I want is the fix this issue with the collars not switching, here is my code Layers package common.zeroquest.client.renderer.entity.layers; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.entity.layers.LayerRenderer; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.passive.EntitySheep; import net.minecraft.item.EnumDyeColor; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import common.zeroquest.client.renderer.entity.RenderZertum; import common.zeroquest.entity.EntityZertum; import common.zeroquest.lib.Constants; @SideOnly(Side.CLIENT) public class LayersZertum implements LayerRenderer { private static final ResourceLocation ZertumDyingTexture = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/zertum_dying.png"); private static final ResourceLocation ZertumCollarTexture = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/zertum_collar.png"); private static final ResourceLocation EvolvedZertumDyingTexture = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/evo/zertum_dying.png"); private static final ResourceLocation EvolvedZertumCollarTexture = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/evo/zertum_collar.png"); //private static final ResourceLocation ZertumSaddleTexture = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/zertum_saddle.png"); private final RenderZertum field_177146_b; private static final String __OBFID = "CL_00002405"; public LayersZertum(RenderZertum p_177145_1_) { this.field_177146_b = p_177145_1_; } public void func_177145_a(EntityZertum p_177145_1_, float p_177145_2_, float p_177145_3_, float p_177145_4_, float p_177145_5_, float p_177145_6_, float p_177145_7_, float p_177145_8_) { if(!p_177145_1_.hasEvolved()){ if (p_177145_1_.isTamed() && !p_177145_1_.isInvisible()) { this.field_177146_b.bindTexture(ZertumCollarTexture); EnumDyeColor enumdyecolor = EnumDyeColor.byMetadata(p_177145_1_.getCollarColor().getMetadata()); float[] afloat = EntitySheep.func_175513_a(enumdyecolor); GlStateManager.color(afloat[0], afloat[1], afloat[2]); this.field_177146_b.getMainModel().render(p_177145_1_, p_177145_2_, p_177145_3_, p_177145_5_, p_177145_6_, p_177145_7_, p_177145_8_); } if(p_177145_1_.isTamed() && p_177145_1_.getHealth() <=10 && !p_177145_1_.isInvisible()){ this.field_177146_b.bindTexture(ZertumDyingTexture); GlStateManager.color(1f, 1f, 1f); this.field_177146_b.getMainModel().render(p_177145_1_, p_177145_2_, p_177145_3_, p_177145_5_, p_177145_6_, p_177145_7_, p_177145_8_); } /*if (p_177145_1_.isSaddled()) { this.field_177146_b.bindTexture(ZertumSaddleTexture); GlStateManager.color(1f, 1f, 1f); this.field_177146_b.getMainModel().render(p_177145_1_, p_177145_2_, p_177145_3_, p_177145_5_, p_177145_6_, p_177145_7_, p_177145_8_); }*/ } else if(p_177145_1_.hasEvolved()){ if (p_177145_1_.isTamed() && !p_177145_1_.isInvisible()) { this.field_177146_b.bindTexture(EvolvedZertumCollarTexture); EnumDyeColor enumdyecolor = EnumDyeColor.byMetadata(p_177145_1_.getCollarColor().getMetadata()); float[] afloat = EntitySheep.func_175513_a(enumdyecolor); GlStateManager.color(afloat[0], afloat[1], afloat[2]); this.field_177146_b.getMainModel().render(p_177145_1_, p_177145_2_, p_177145_3_, p_177145_5_, p_177145_6_, p_177145_7_, p_177145_8_); } if(p_177145_1_.isTamed() && p_177145_1_.getHealth() <=10 && !p_177145_1_.isInvisible()){ this.field_177146_b.bindTexture(EvolvedZertumDyingTexture); GlStateManager.color(1f, 1f, 1f); this.field_177146_b.getMainModel().render(p_177145_1_, p_177145_2_, p_177145_3_, p_177145_5_, p_177145_6_, p_177145_7_, p_177145_8_); } } } public boolean shouldCombineTextures() { return true; } public void doRenderLayer(EntityLivingBase p_177141_1_, float p_177141_2_, float p_177141_3_, float p_177141_4_, float p_177141_5_, float p_177141_6_, float p_177141_7_, float p_177141_8_) { this.func_177145_a((EntityZertum)p_177141_1_, p_177141_2_, p_177141_3_, p_177141_4_, p_177141_5_, p_177141_6_, p_177141_7_, p_177141_8_); } } Model: package common.zeroquest.client.renderer.entity.model; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.util.MathHelper; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import org.lwjgl.opengl.GL11; import common.zeroquest.entity.EntityZertumEntity; @SideOnly(Side.CLIENT) public class ModelZertum extends ModelBase { //fields ModelRenderer Nose; ModelRenderer Ear2; ModelRenderer Ear1; ModelRenderer Head; ModelRenderer LeftHindLeg1; ModelRenderer LeftHindLeg2; ModelRenderer LeftHindLeg3; ModelRenderer RightHindLeg1; ModelRenderer RightHindLeg2; ModelRenderer RightHindLeg3; ModelRenderer Mane1; ModelRenderer RightLeg; ModelRenderer LeftLeg; ModelRenderer Tail1; ModelRenderer Tail2; ModelRenderer Tail3; ModelRenderer Mane2; ModelRenderer Torso; ModelRenderer Neck; ModelRenderer Pad1; ModelRenderer Pad2; ModelRenderer Pad3; ModelRenderer Pad4; ModelRenderer PadPart1; ModelRenderer PadPart2; ModelRenderer Rope1; ModelRenderer Metal1; ModelRenderer Rope2; ModelRenderer Metal2; ModelRenderer Seat1; ModelRenderer Seat2; //EvoModel\\ ModelRenderer RightEarPart1; ModelRenderer RightEarPart2; ModelRenderer RightEarPart3; ModelRenderer LeftEarPart1; ModelRenderer LeftEarPart2; ModelRenderer LeftEarPart3; ModelRenderer LeftBottomJaw; ModelRenderer BottomJawPart1; ModelRenderer BottomJawPart2; ModelRenderer BottomJawCenter; ModelRenderer LeftTopTeeth; ModelRenderer LeftTopJaw; ModelRenderer LeftBottomTeeth; ModelRenderer RightTopTeeth; ModelRenderer RightBottomTeeth; ModelRenderer TopJawPart1; ModelRenderer TopJawPart2; ModelRenderer TopJawCenter; ModelRenderer RightTopJaw; ModelRenderer LeftJawWebPart2; ModelRenderer LeftJawWebPart1; ModelRenderer RightJawWebPart2; ModelRenderer RightJawWebPart1; ModelRenderer RightBottomJaw; ModelRenderer Throat; ModelRenderer UpSection; ModelRenderer MidSection; ModelRenderer Pelvis; ModelRenderer TailPart1; ModelRenderer TailPart2; ModelRenderer TailPart3; ModelRenderer LeftHumerus; ModelRenderer LeftRadius; ModelRenderer LeftFClawRPart1; ModelRenderer LeftFClawRPart2; ModelRenderer LeftFClawMPart1; ModelRenderer LeftFClawMPart2; ModelRenderer LeftFClawLPart2; ModelRenderer LeftFClawLPart1; ModelRenderer RightHumerus; ModelRenderer RightRadius; ModelRenderer RightFClawRPart1; ModelRenderer RightFClawRPart2; ModelRenderer RightFClawMPart1; ModelRenderer RightFClawMPart2; ModelRenderer RightFClawLPart1; ModelRenderer RightFClawLPart2; ModelRenderer LeftFemur; ModelRenderer LeftTibia; ModelRenderer LeftMetatarsus; ModelRenderer LeftClawLPart1; ModelRenderer LeftClawLPart2; ModelRenderer LeftClawRPart1; ModelRenderer LeftClawRPart2; ModelRenderer LeftClawMPart1; ModelRenderer LeftClawMPart2; ModelRenderer RightFemur; ModelRenderer RightTibia; ModelRenderer RightMetatarsus; ModelRenderer RightClawRPart1; ModelRenderer RightClawRPart2; ModelRenderer RightClawMPart1; ModelRenderer RightClawMPart2; ModelRenderer RightClawLPart1; ModelRenderer RightClawLPart2; private float rightFemur = -0.2974289F; private float leftFemur = -0.2974289F; private float rightTibia = 0.8205006F; private float leftTibia = 0.8205006F; private float rightMetatarus = -0.5205006F; private float leftMetatarus = -0.5205006F; private float mane2StartingRotation = -0.34653F; private float vertebrae = -0.6015813F; public ModelZertum() { textureWidth = 128; textureHeight = 64; Nose = new ModelRenderer(this, 25, 27); Nose.addBox(-1.5F, 0F, -3F, 3, 3, 4); Nose.setRotationPoint(0F, 2.5F, -15F); setRotation(Nose, 0F, 0F, 0F); Ear2 = new ModelRenderer(this, 40, 28); Ear2.addBox(-1F, -3F, 0F, 2, 3, 1); Ear2.setRotationPoint(2F, -0.5F, -10.5F); setRotation(Ear2, 0F, 0F, 0F); Ear1 = new ModelRenderer(this, 40, 28); Ear1.addBox(-1F, -3F, 0F, 2, 3, 1); Ear1.setRotationPoint(-2F, -0.5F, -10.5F); setRotation(Ear1, 0F, 0F, 0F); Head = new ModelRenderer(this, 25, 15); Head.addBox(-3F, -0.5F, -14F, 6, 6, 5); Head.setRotationPoint(-0.5F, 6F, -3F); setRotation(Head, 0F, 0F, 0F); LeftHindLeg1 = new ModelRenderer(this, 11, 18); LeftHindLeg1.addBox(-1F, 0F, -1F, 2, 5, 3); LeftHindLeg1.setRotationPoint(1.5F, 13F, 5F); setRotation(LeftHindLeg1, -0.2974289F, 0F, 0F); LeftHindLeg2 = new ModelRenderer(this, 3, 44); LeftHindLeg2.addBox(-1F, 0F, -1F, 2, 4, 2); LeftHindLeg2.setRotationPoint(0F, 4.3F, -0.3F); setRotation(LeftHindLeg2, leftTibia, 0F, 0F); LeftHindLeg3 = new ModelRenderer(this, 0, 51); LeftHindLeg3.addBox(-1F, 0F, -1F, 2, 4, 2); LeftHindLeg3.setRotationPoint(0F, 3.55F, 0.2F); setRotation(LeftHindLeg3, leftMetatarus, 0F, 0F); RightHindLeg1 = new ModelRenderer(this, 11, 31); RightHindLeg1.addBox(-1F, 0F, -1F, 2, 5, 3); RightHindLeg1.setRotationPoint(-2.5F, 13F, 5F); setRotation(RightHindLeg1, -0.2974289F, 0F, 0F); RightHindLeg2 = new ModelRenderer(this, 3, 44); RightHindLeg2.addBox(-1F, 0F, -1F, 2, 4, 2); RightHindLeg2.setRotationPoint(0F, 4.3F, -0.3F); setRotation(RightHindLeg2, rightTibia, 0F, 0F); RightHindLeg3 = new ModelRenderer(this, 9, 51); RightHindLeg3.addBox(-1F, 0F, -1F, 2, 4, 2); RightHindLeg3.setRotationPoint(0F, 3.55F, 0.2F); setRotation(RightHindLeg3, rightMetatarus, 0F, 0F); Mane1 = new ModelRenderer(this, 43, 0); Mane1.addBox(-3F, -3F, -3F, 6, 6, 7); Mane1.setRotationPoint(-0.5F, 14F, -3F); setRotation(Mane1, 1.496439F, 0F, 0F); Neck = new ModelRenderer(this, 0, 0); Neck.addBox(-2.5F, -12F, -4F, 4, 7, 4); Neck.setRotationPoint(0.5F, 0F, 0F); setRotation(Neck, -0.6015813F, 0F, 0F); Mane2 = new ModelRenderer(this, 18, 0); Mane2.addBox(-2.5F, -7F, -3.6F, 5, 6, 7); Mane2.setRotationPoint(0F, 0F, 0F); setRotation(Mane2, -0.34653F, 0F, 0F); RightLeg = new ModelRenderer(this, 0, 30); RightLeg.addBox(-1F, 0F, -1F, 2, 10, 2); RightLeg.setRotationPoint(-3F, 14F, -4F); setRotation(RightLeg, 0F, 0F, 0F); LeftLeg = new ModelRenderer(this, 0, 16); LeftLeg.addBox(-1F, 0F, -1F, 2, 10, 2); LeftLeg.setRotationPoint(2F, 14F, -4F); setRotation(LeftLeg, 0F, 0F, 0F); Tail1 = new ModelRenderer(this, 91, 0); Tail1.addBox(-1.5F, 0F, -1F, 4, 8, 4); Tail1.setRotationPoint(-1F, 14.3F, 6F); setRotation(Tail1, 1.315962F, 0F, 0F); Tail2 = new ModelRenderer(this, 110, 0); Tail2.addBox(-1.5F, 0F, -1F, 3, 8, 3); Tail2.setRotationPoint(0.5F, 6F, 0.5F); setRotation(Tail2, -0.041605F, 0F, 0F); Tail3 = new ModelRenderer(this, 110, 13); Tail3.addBox(-1F, 0F, -1F, 2, 8, 2); Tail3.setRotationPoint(0F, 6.5F, 0.5F); setRotation(Tail3, 0.001605F, 0F, 0F); Torso = new ModelRenderer(this, 69, 0); Torso.addBox(-2.5F, -3F, -3F, 5, 9, 5); Torso.setRotationPoint(-0.5F, 12.5F, 1F); setRotation(Torso, 1.496439F, 0F, 0F); //Saddle\\ Pad1 = new ModelRenderer(this, 110, 32); Pad1.addBox(-2F, 0F, 0F, 4, 1, 1); Pad1.setRotationPoint(-0.5F, 9.3F, -2.5F); setRotation(Pad1, -0.0650564F, 0F, 0F); Pad2 = new ModelRenderer(this, 110, 35); Pad2.addBox(-3F, 0F, 0F, 6, 1, 2); Pad2.setRotationPoint(-0.5F, 9.4F, -1.5F); setRotation(Pad2, -0.0743572F, 0F, 0F); Pad3 = new ModelRenderer(this, 110, 39); Pad3.addBox(-2F, 0F, 0F, 5, 1, 4); Pad3.setRotationPoint(-1F, 9.5F, 0.2F); setRotation(Pad3, -0.0650564F, 0F, 0F); Pad4 = new ModelRenderer(this, 110, 48); Pad4.addBox(-1.5F, 0F, 0F, 3, 1, 1); Pad4.setRotationPoint(-0.5F, 9.8F, 4.1F); setRotation(Pad4, -0.0650564F, 0F, 0F); PadPart1 = new ModelRenderer(this, 110, 29); PadPart1.addBox(-0.5F, 0F, 0F, 1, 1, 1); PadPart1.setRotationPoint(1F, 9.23F, -3.5F); setRotation(PadPart1, -0.0650564F, 0F, 0F); PadPart2 = new ModelRenderer(this, 110, 29); PadPart2.addBox(-0.5F, 0F, 0F, 1, 1, 1); PadPart2.setRotationPoint(-2F, 9.2F, -3.5F); setRotation(PadPart2, -0.0650564F, 0F, 0F); Rope1 = new ModelRenderer(this, 105, 32); Rope1.addBox(0F, 0F, -0.5F, 1, 4, 1); Rope1.setRotationPoint(1.8F, 9.6F, 0F); setRotation(Rope1, 0F, 0F, 0F); Metal1 = new ModelRenderer(this, 102, 39); Metal1.addBox(0F, 0F, -1F, 1, 1, 2); Metal1.setRotationPoint(1.8F, 13.6F, 0F); setRotation(Metal1, 0F, 0F, 0F); Rope2 = new ModelRenderer(this, 105, 32); Rope2.addBox(-1F, 0F, -0.5F, 1, 4, 1); Rope2.setRotationPoint(-2.8F, 9.6F, 0F); setRotation(Rope2, 0F, 0F, 0F); Metal2 = new ModelRenderer(this, 102, 39); Metal2.addBox(0F, 0F, -1F, 1, 1, 2); Metal2.setRotationPoint(-3.8F, 13.6F, 0F); setRotation(Metal2, 0F, 0F, 0F); Seat1 = new ModelRenderer(this, 100, 45); Seat1.addBox(-1F, 0F, 0F, 2, 1, 1); Seat1.setRotationPoint(-0.5F, 8.7F, -1.5F); setRotation(Seat1, -0.0650484F, 0F, 0F); Seat2 = new ModelRenderer(this, 100, 49); Seat2.addBox(-2F, 0F, 0F, 4, 1, 1); Seat2.setRotationPoint(-0.5F, 9F, 3.2F); setRotation(Seat2, -0.0650484F, 0F, 0F); Head.addChild(Nose); Head.addChild(Ear1); Head.addChild(Ear2); LeftHindLeg1.addChild(LeftHindLeg2); RightHindLeg1.addChild(RightHindLeg2); LeftHindLeg2.addChild(LeftHindLeg3); RightHindLeg2.addChild(RightHindLeg3); Mane1.addChild(Mane2); Mane1.addChild(Neck); Tail1.addChild(Tail2); Tail2.addChild(Tail3); //EvoModel\\ //Ears\\ textureWidth = 256; textureHeight = 128; RightEarPart1 = new ModelRenderer(this, 18, 60); RightEarPart1.addBox(-1F, -1F, -1F, 1, 1, 4); RightEarPart1.setRotationPoint(-1.5F, 1.5F, -5F); setRotation(RightEarPart1, 0.0346075F, -0.3346075F, 0F); RightEarPart2 = new ModelRenderer(this, 15, 66); RightEarPart2.addBox(-1F, -1F, 0F, 2, 2, 6); RightEarPart2.setRotationPoint(-0.5F, -0.5F, 0F); setRotation(RightEarPart2, 0.3346075F, -0.0346075F, 0F); RightEarPart3 = new ModelRenderer(this, 16, 75); RightEarPart3.addBox(-0.5F, -0.5F, 0F, 1, 1, 6); RightEarPart3.setRotationPoint(-0.5F, 0F, 4F); setRotation(RightEarPart3, 0.0346075F, 0.4115358F, 0.0743572F); LeftEarPart1 = new ModelRenderer(this, 18, 60); LeftEarPart1.addBox(-1F, -1F, -1F, 1, 1, 4); LeftEarPart1.setRotationPoint(3.5F, 1.5F, -5F); setRotation(LeftEarPart1, 0.3346075F, 0.3346145F, 0F); LeftEarPart2 = new ModelRenderer(this, 15, 66); LeftEarPart2.addBox(-1F, -1F, 0F, 2, 2, 6); LeftEarPart2.setRotationPoint(-0.5F, -0.5F, 0F); setRotation(LeftEarPart2, 0.0346075F, 0.0346145F, 0F); LeftEarPart3 = new ModelRenderer(this, 16, 75); LeftEarPart3.addBox(-0.5F, -0.5F, 0F, 1, 1, 6); LeftEarPart3.setRotationPoint(0.5F, 0F, 4F); setRotation(LeftEarPart3, 0.0346145F, -0.411544F, -0.074351F); //Top Jaw\\ TopJawCenter = new ModelRenderer(this, 56, 38); TopJawCenter.addBox(-0.5F, 0F, -7.4F, 2, 1, ; TopJawCenter.setRotationPoint(0.5F, -5.7F, -8F); setRotation(TopJawCenter, 0F, 0F, 0F); LeftTopJaw = new ModelRenderer(this, 39, 50); LeftTopJaw.addBox(0F, 0F, -9F, 1, 2, 9); LeftTopJaw.setRotationPoint(3F, 0F, 0F); setRotation(LeftTopJaw, 0F, 0.3346075F, 0F); LeftTopTeeth = new ModelRenderer(this, 61, 50); LeftTopTeeth.addBox(0.5F, 0F, -9.3F, 0, 1, 5); LeftTopTeeth.setRotationPoint(0F, 2F, 0F); setRotation(LeftTopTeeth, 0F, -0.0346145F, 0F); RightTopJaw = new ModelRenderer(this, 39, 63); RightTopJaw.addBox(-1F, 0F, -9F, 1, 2, 9); RightTopJaw.setRotationPoint(-2F, 0F, 0F); setRotation(RightTopJaw, 0F, -0.3346075F, 0F); RightTopTeeth = new ModelRenderer(this, 61, 50); RightTopTeeth.addBox(-0.5F, 0F, -9.3F, 0, 1, 5); RightTopTeeth.setRotationPoint(0F, 2F, 0F); setRotation(RightTopTeeth, 0F, 0.0346075F, 0F); TopJawPart1 = new ModelRenderer(this, 38, 40); TopJawPart1.addBox(-1F, 0F, -5.7F, 2, 1, 6); TopJawPart1.setRotationPoint(-1F, 0F, 0F); setRotation(TopJawPart1, 0F, -0.3346075F, 0F); TopJawPart2 = new ModelRenderer(this, 38, 40); TopJawPart2.addBox(-1F, 0F, -5.7F, 2, 1, 6); TopJawPart2.setRotationPoint(2F, 0F, 0F); setRotation(TopJawPart2, 0F, 0.3346145F, 0F); LeftJawWebPart1 = new ModelRenderer(this, 0, 66); LeftJawWebPart1.addBox(-1F, 0F, -2.9F, 1, 3, 2); LeftJawWebPart1.setRotationPoint(5F, 2F, -19F); setRotation(LeftJawWebPart1, 0.4089647F, 0.3346145F, 0F); LeftJawWebPart2 = new ModelRenderer(this, 0, 66); LeftJawWebPart2.addBox(-1F, -1F, -1.9F, 1, 3, 2); LeftJawWebPart2.setRotationPoint(5F, 6F, -19F); setRotation(LeftJawWebPart2, -0.2974289F, 0.3346145F, 0F); RightJawWebPart1 = new ModelRenderer(this, 0, 66); RightJawWebPart1.addBox(-1F, 0F, -2.9F, 1, 3, 2); RightJawWebPart1.setRotationPoint(-0.9F, 2F, -19F); setRotation(RightJawWebPart1, 0.4089647F, -0.3346075F, 0F); RightJawWebPart2 = new ModelRenderer(this, 0, 66); RightJawWebPart2.addBox(-1F, -1F, -1.9F, 1, 3, 2); RightJawWebPart2.setRotationPoint(-0.9F, 6F, -19F); setRotation(RightJawWebPart2, -0.2974289F, -0.3346075F, 0F); //BottomJaw\\ BottomJawCenter = new ModelRenderer(this, 0, 109); BottomJawCenter.addBox(-0.5F, 0F, -7.2F, 2, 1, ; BottomJawCenter.setRotationPoint(0.5F, -0.7F, -8F); setRotation(BottomJawCenter, 0.1587144F, 0F, 0F); LeftBottomJaw = new ModelRenderer(this, 0, 84); LeftBottomJaw.addBox(0F, 0F, -9F, 1, 2, 9); LeftBottomJaw.setRotationPoint(3F, -1.1F, 0F); setRotation(LeftBottomJaw, 0.1487144F, 0.3346075F, 0F); LeftBottomTeeth = new ModelRenderer(this, 21, 93); LeftBottomTeeth.addBox(0.5F, 0F, -9.3F, 0, 1, 5); LeftBottomTeeth.setRotationPoint(0.5F, -2.2F, 0F); setRotation(LeftBottomTeeth, 0.1487144F, 0.0346145F, 0F); RightBottomJaw = new ModelRenderer(this, 0, 97); RightBottomJaw.addBox(-1F, 0F, -9F, 1, 2, 9); RightBottomJaw.setRotationPoint(-2F, -1.1F, 0F); setRotation(RightBottomJaw, 0.1487144F, -0.3346075F, 0F); RightBottomTeeth = new ModelRenderer(this, 21, 93); RightBottomTeeth.addBox(-0.5F, 0F, -9.3F, 0, 1, 5); RightBottomTeeth.setRotationPoint(-0.5F, -2.1F, 0F); setRotation(RightBottomTeeth, 0.1487144F, -0.0346075F, 0F); BottomJawPart1 = new ModelRenderer(this, 21, 84); BottomJawPart1.addBox(-1F, 0F, -6.5F, 2, 1, 7); BottomJawPart1.setRotationPoint(-1F, 0F, 0F); setRotation(BottomJawPart1, 0.1487144F, -0.3346075F, 0F); BottomJawPart2 = new ModelRenderer(this, 21, 84); BottomJawPart2.addBox(-1F, 0F, -6.5F, 2, 1, 7); BottomJawPart2.setRotationPoint(2F, 0F, 0F); setRotation(BottomJawPart2, 0.1487144F, 0.3346075F, 0F); Throat = new ModelRenderer(this, 0, 0); Throat.addBox(-2F, -3F, -9F, 6, 5, 6); Throat.setRotationPoint(0.5F, 7.7F, -11F); Throat.setTextureSize(256, 128); Throat.mirror = true; setRotation(Throat, -0.2288904F, 0F, 0F); UpSection = new ModelRenderer(this, 25, 0); UpSection.addBox(-2F, -2.5F, -9F, 7, 7, ; UpSection.setRotationPoint(-0.5F, -0.5F, 2F); UpSection.setTextureSize(256, 128); UpSection.mirror = true; setRotation(UpSection, -0.1917118F, 0F, 0F); MidSection = new ModelRenderer(this, 56, 0); MidSection.addBox(-2F, -2.5F, 0F, 6, 6, 9); MidSection.setRotationPoint(0.5F, 7.5F, -8F); setRotation(MidSection, -0.0429974F, 0F, 0F); Pelvis = new ModelRenderer(this, 87, 0); Pelvis.addBox(-2F, -2.5F, 0F, 6, 6, 7); Pelvis.setRotationPoint(0F, 0F, 8F); setRotation(Pelvis, 0F, 0F, 0F); TailPart1 = new ModelRenderer(this, 114, 0); TailPart1.addBox(-1F, -1F, 0F, 2, 2, 11); TailPart1.setRotationPoint(1.5F, 7F, 6F); setRotation(TailPart1, -0.3346075F, 0F, 0F); TailPart2 = new ModelRenderer(this, 141, 0); TailPart2.addBox(-1F, -1F, 0F, 2, 2, 11); TailPart2.setRotationPoint(0F, -0.2F, 10.5F); setRotation(TailPart2, -0.3948578F, 0F, 0F); TailPart3 = new ModelRenderer(this, 168, 0); TailPart3.addBox(-1F, -1F, 0F, 2, 2, 11); TailPart3.setRotationPoint(0F, 0F, 10.8F); setRotation(TailPart3, 0.2974289F, 0F, 0F); LeftHumerus = new ModelRenderer(this, 39, 16); LeftHumerus.addBox(0F, 0F, 0F, 3, 10, 4); LeftHumerus.setRotationPoint(3F, 4.7F, -12F); setRotation(LeftHumerus, 0.3869765F, 0F, 0F); LeftRadius = new ModelRenderer(this, 71, 16); LeftRadius.addBox(0F, 0F, 0F, 3, 11, 4); LeftRadius.setRotationPoint(0F, 8.0F, 0.45F); setRotation(LeftRadius, -0.3869765F, 0F, 0F); LeftFClawRPart1 = new ModelRenderer(this, 0, 58); LeftFClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftFClawRPart1.setRotationPoint(0F, 9.7F, 0F); setRotation(LeftFClawRPart1, 0F, 0.5159687F, 0F); LeftFClawRPart2 = new ModelRenderer(this, 5, 58); LeftFClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftFClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftFClawRPart2, 1.16093F, 0.0259717F, 0F); LeftFClawMPart1 = new ModelRenderer(this, 0, 58); LeftFClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftFClawMPart1.setRotationPoint(1.5F, 9.7F, 0F); setRotation(LeftFClawMPart1, 0F, 0F, 0F); LeftFClawMPart2 = new ModelRenderer(this, 5, 58); LeftFClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftFClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftFClawMPart2, 1.16093F, 0F, 0F); LeftFClawLPart1 = new ModelRenderer(this, 0, 58); LeftFClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftFClawLPart1.setRotationPoint(3F, 9.7F, 0F); setRotation(LeftFClawLPart1, 0F, -0.5159717F, 0F); LeftFClawLPart2 = new ModelRenderer(this, 5, 58); LeftFClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftFClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftFClawLPart2, 1.16093F, -0.0059717F, 0F); RightHumerus = new ModelRenderer(this, 55, 16); RightHumerus.addBox(-3F, 0F, 0F, 3, 10, 4); RightHumerus.setRotationPoint(0F, 4.7F, -12F); setRotation(RightHumerus, 0.3869765F, 0F, 0F); RightRadius = new ModelRenderer(this, 71, 16); RightRadius.addBox(-3F, 0F, 0F, 3, 11, 4); RightRadius.setRotationPoint(0F, 8.0F, 0.45F); setRotation(RightRadius, -0.3869765F, 0F, 0F); RightFClawRPart1 = new ModelRenderer(this, 0, 58); RightFClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightFClawRPart1.setRotationPoint(-3F, 9.7F, 0F); setRotation(RightFClawRPart1, 0F, 0.5159687F, 0F); RightFClawRPart2 = new ModelRenderer(this, 5, 58); RightFClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightFClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightFClawRPart2, 1.16093F, 0.0259717F, 0F); RightFClawMPart1 = new ModelRenderer(this, 0, 58); RightFClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightFClawMPart1.setRotationPoint(-1.5F, 9.7F, 0F); setRotation(RightFClawMPart1, 0F, 0F, 0F); RightFClawMPart2 = new ModelRenderer(this, 5, 58); RightFClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightFClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightFClawMPart2, 1.16093F, 0F, 0F); RightFClawLPart1 = new ModelRenderer(this, 0, 58); RightFClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightFClawLPart1.setRotationPoint(0F, 9.7F, 0F); setRotation(RightFClawLPart1, 0F, -0.5159717F, 0F); RightFClawLPart2 = new ModelRenderer(this, 5, 58); RightFClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightFClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightFClawLPart2, 1.16093F, -0.0059717F, 0F); LeftFemur = new ModelRenderer(this, 19, 16); LeftFemur.addBox(0F, 0F, 0F, 3, 8, 6); LeftFemur.setRotationPoint(3F, 5.7F, 0F); setRotation(LeftFemur, 0F, 0F, 0F); LeftTibia = new ModelRenderer(this, 0, 31); LeftTibia.addBox(0F, 0F, 0F, 3, 3, 9); LeftTibia.setRotationPoint(0F, 7.7F, 0F); setRotation(LeftTibia, 0F, 0F, 0F); LeftMetatarsus = new ModelRenderer(this, 0, 44); LeftMetatarsus.addBox(0F, 0F, 0F, 3, 10, 3); LeftMetatarsus.setRotationPoint(0F, -0.02F, 8F); setRotation(LeftMetatarsus, -0.1289922F, 0F, 0F); LeftClawRPart1 = new ModelRenderer(this, 0, 58); LeftClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftClawRPart1.setRotationPoint(0F, 9F, 0F); setRotation(LeftClawRPart1, 0F, 0.5159687F, 0F); LeftClawRPart2 = new ModelRenderer(this, 5, 58); LeftClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftClawRPart2, 1.16093F, -0.0259717F, 0F); LeftClawMPart1 = new ModelRenderer(this, 0, 58); LeftClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftClawMPart1.setRotationPoint(1.5F, 9F, 0F); setRotation(LeftClawMPart1, 0F, 0F, 0F); LeftClawMPart2 = new ModelRenderer(this, 5, 58); LeftClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftClawMPart2, 1.16093F, 0F, 0F); LeftClawLPart1 = new ModelRenderer(this, 0, 58); LeftClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); LeftClawLPart1.setRotationPoint(3F, 9F, 0F); setRotation(LeftClawLPart1, 0F, -0.5159687F, 0F); LeftClawLPart2 = new ModelRenderer(this, 5, 58); LeftClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); LeftClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(LeftClawLPart2, 1.16093F, 0.0059717F, 0F); RightFemur = new ModelRenderer(this, 0, 16); RightFemur.addBox(-2F, 0F, 0F, 3, 8, 6); RightFemur.setRotationPoint(-1F, 5.7F, 0F); setRotation(RightFemur, 0F, 0F, 0F); RightTibia = new ModelRenderer(this, 0, 31); RightTibia.addBox(-2F, 0F, 0F, 3, 3, 9); RightTibia.setRotationPoint(0F, 7.7F, 0F); setRotation(RightTibia, 0F, 0F, 0F); RightMetatarsus = new ModelRenderer(this, 0, 44); RightMetatarsus.addBox(-2F, 0F, 0F, 3, 10, 3); RightMetatarsus.setRotationPoint(0F, -0.02F, 8F); setRotation(RightMetatarsus, -0.1289922F, 0F, 0F); RightClawRPart1 = new ModelRenderer(this, 0, 58); RightClawRPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightClawRPart1.setRotationPoint(-3F, 9F, 0F); setRotation(RightClawRPart1, 0F, 0.5159687F, 0F); RightClawRPart2 = new ModelRenderer(this, 5, 58); RightClawRPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightClawRPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightClawRPart2, 1.16093F, -0.0259717F, 0F); RightClawMPart1 = new ModelRenderer(this, 0, 58); RightClawMPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightClawMPart1.setRotationPoint(-1.5F, 9F, 0F); setRotation(RightClawMPart1, 0F, 0F, 0F); RightClawMPart2 = new ModelRenderer(this, 5, 58); RightClawMPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightClawMPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightClawMPart2, 1.16093F, 0F, 0F); RightClawLPart1 = new ModelRenderer(this, 0, 58); RightClawLPart1.addBox(-0.5F, 0F, -1F, 1, 1, 1); RightClawLPart1.setRotationPoint(0F, 9F, 0F); setRotation(RightClawLPart1, 0F, -0.5159717F, 0F); RightClawLPart2 = new ModelRenderer(this, 5, 58); RightClawLPart2.addBox(-0.5F, -1F, -3.4F, 1, 1, 3); RightClawLPart2.setRotationPoint(0F, 0F, 0F); setRotation(RightClawLPart2, 1.16093F, 0.0059717F, 0F); //Head\\ this.Throat.addChild(TopJawCenter); this.Throat.addChild(BottomJawCenter); this.TopJawCenter.addChild(LeftEarPart1); this.TopJawCenter.addChild(RightEarPart1); this.TopJawCenter.addChild(TopJawPart1); this.TopJawCenter.addChild(TopJawPart2); this.TopJawCenter.addChild(LeftTopJaw); this.TopJawCenter.addChild(RightTopJaw); this.LeftTopJaw.addChild(LeftTopTeeth); this.RightTopJaw.addChild(RightTopTeeth); this.LeftEarPart1.addChild(LeftEarPart2); this.LeftEarPart2.addChild(LeftEarPart3); this.RightEarPart1.addChild(RightEarPart2); this.RightEarPart2.addChild(RightEarPart3); this.BottomJawCenter.addChild(BottomJawPart1); this.BottomJawCenter.addChild(BottomJawPart2); this.BottomJawCenter.addChild(LeftBottomJaw); this.BottomJawCenter.addChild(RightBottomJaw); this.LeftBottomJaw.addChild(LeftBottomTeeth); this.RightBottomJaw.addChild(RightBottomTeeth); //Torso\\ this.MidSection.addChild(Pelvis); this.MidSection.addChild(UpSection); //Front Legs\\ this.LeftHumerus.addChild(LeftRadius); this.LeftRadius.addChild(LeftFClawLPart1); this.LeftRadius.addChild(LeftFClawMPart1); this.LeftRadius.addChild(LeftFClawRPart1); this.LeftFClawLPart1.addChild(LeftFClawLPart2); this.LeftFClawMPart1.addChild(LeftFClawMPart2); this.LeftFClawRPart1.addChild(LeftFClawRPart2); this.RightHumerus.addChild(RightRadius); this.RightRadius.addChild(RightFClawLPart1); this.RightRadius.addChild(RightFClawMPart1); this.RightRadius.addChild(RightFClawRPart1); this.RightFClawLPart1.addChild(RightFClawLPart2); this.RightFClawMPart1.addChild(RightFClawMPart2); this.RightFClawRPart1.addChild(RightFClawRPart2); //Back Legs\\\ this.LeftFemur.addChild(LeftTibia); this.LeftTibia.addChild(LeftMetatarsus); this.LeftMetatarsus.addChild(LeftClawLPart1); this.LeftMetatarsus.addChild(LeftClawMPart1); this.LeftMetatarsus.addChild(LeftClawRPart1); this.LeftClawLPart1.addChild(LeftClawLPart2); this.LeftClawMPart1.addChild(LeftClawMPart2); this.LeftClawRPart1.addChild(LeftClawRPart2); this.RightFemur.addChild(RightTibia); this.RightTibia.addChild(RightMetatarsus); this.RightMetatarsus.addChild(RightClawLPart1); this.RightMetatarsus.addChild(RightClawMPart1); this.RightMetatarsus.addChild(RightClawRPart1); this.RightClawLPart1.addChild(RightClawLPart2); this.RightClawMPart1.addChild(RightClawMPart2); this.RightClawRPart1.addChild(RightClawRPart2); //Tail\\ this.TailPart1.addChild(TailPart2); this.TailPart2.addChild(TailPart3); } @Override public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) { EntityZertumEntity entity = (EntityZertumEntity)par1Entity; boolean flag = entity.isSaddled(); super.render(par1Entity, par2, par3, par4, par5, par6, par7); this.setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity); if(!entity.hasEvolved()) if (this.isChild) { float f6 = 2.0F; GL11.glPushMatrix(); GL11.glTranslatef(0.0F, 5.0F * par7, 6.0F * par7); Head.render(par7); GL11.glPopMatrix(); GL11.glPushMatrix(); GL11.glScalef(1.0F / f6, 1.0F / f6, 1.0F / f6); GL11.glTranslatef(0.0F, 24.0F * par7, 0.0F); LeftHindLeg1.render(par7); RightHindLeg1.render(par7); Mane1.render(par7); RightLeg.render(par7); LeftLeg.render(par7); Tail1.render(par7); Torso.render(par7); GL11.glPopMatrix(); } else { GL11.glPushMatrix(); GL11.glScalef(1.5F, 1.5F, 1.5F); GL11.glTranslatef(0.0F, -0.5F, 0.0F); Head.render(par7); LeftHindLeg1.render(par7); RightHindLeg1.render(par7); Mane1.render(par7); RightLeg.render(par7); LeftLeg.render(par7); Tail1.render(par7); Torso.render(par7); GL11.glPopMatrix(); if(flag){ GL11.glPushMatrix(); GL11.glScalef(1.5F, 1.5F, 1.5F); GL11.glTranslatef(0.0F, -0.5F, 0.0F); Pad1.render(par7); Pad2.render(par7); Pad3.render(par7); Pad4.render(par7); PadPart1.render(par7); PadPart2.render(par7); Rope1.render(par7); Metal1.render(par7); Rope2.render(par7); Metal2.render(par7); Seat1.render(par7); Seat2.render(par7); GL11.glPopMatrix(); } }else if (entity.hasEvolved()){ textureWidth = 256; textureHeight = 128; RightJawWebPart1.render(par7); RightJawWebPart2.render(par7); LeftJawWebPart1.render(par7); LeftJawWebPart2.render(par7); Throat.render(par7); MidSection.render(par7); TailPart1.render(par7); LeftHumerus.render(par7); RightHumerus.render(par7); LeftFemur.render(par7); RightFemur.render(par7); } } /** * Used for easily adding entity-dependent animations. The second and third float params here are the same second * and third as in the setRotationAngles method. */ @Override public void setLivingAnimations(EntityLivingBase par1EntityLivingBase, float par2, float par3, float par4) { EntityZertumEntity entityzertum = (EntityZertumEntity)par1EntityLivingBase; if(!entityzertum.hasEvolved()){ if (entityzertum.isAngry()) { this.Ear1.rotateAngleX = -0.5948578F; this.Ear2.rotateAngleX = -0.5948578F; }else if (entityzertum.getHealth() <=10){ this.Ear1.rotateAngleX = -0.9948578F; this.Ear2.rotateAngleX = -0.9948578F; }else{ this.Ear1.rotateAngleX = 0.0F; this.Ear2.rotateAngleX = 0.0F; } if (entityzertum.isSitting()) //TODO { LeftHindLeg1.setRotationPoint(1.5F, 18F, 5F); LeftHindLeg1.rotateAngleX = -2.082003F; LeftHindLeg2.setRotationPoint(0F, 4F, 1.2F); LeftHindLeg2.rotateAngleX = 2.6205006F; LeftHindLeg3.setRotationPoint(0F, 3.55F, 0.2F); LeftHindLeg3.rotateAngleX = -0.5205006F; RightHindLeg1.setRotationPoint(-2.5F, 18F, 5F); RightHindLeg1.rotateAngleX = -2.082003F; RightHindLeg2.setRotationPoint(0F, 4F, 1.2F); RightHindLeg2.rotateAngleX = 2.6205006F; RightHindLeg3.setRotationPoint(0F, 3.55F, 0.2F); RightHindLeg3.rotateAngleX = -0.5205006F; Torso.setRotationPoint(-0.5F, 14F, 1F); Torso.rotateAngleX = 0.9759358F; Tail1.setRotationPoint(-1F, 18.5F, 5F); Tail1.rotateAngleX = 1.167248F; Tail2.rotateAngleX = 0.315962F; Tail3.rotateAngleX = 0.23333F; //Saddle\\ Pad1.setRotationPoint(-0.5F, 9.7F, -1.5F); setRotation(Pad1, -0.288128F, 0F, 0F); Pad2.setRotationPoint(-0.5F, 10F, -0.5F); setRotation(Pad2, -0.3346075F, 0F, 0F); Pad3.setRotationPoint(-1F, 10.7F, 1.4F); setRotation(Pad3, -0.5855569F, 0F, 0F); Pad4.setRotationPoint(-0.5F, 12.9F, 4.7F); setRotation(Pad4, -0.5948648F, 0F, 0F); PadPart1.setRotationPoint(1F, 9.6F, -2.4F); setRotation(PadPart1, -0.3624853F, 0F, 0F); PadPart2.setRotationPoint(-2F, 9.6F, -2.4F); setRotation(PadPart2, -0.3624874F, 0F, 0F); Rope1.setRotationPoint(1.8F, 10.6F, 1F); setRotation(Rope1, -0.3346075F, 0F, 0F); Metal1.setRotationPoint(1.8F, 14.2F, -0.3F); setRotation(Metal1, -0.3346145F, 0F, 0F); Rope2.setRotationPoint(-2.8F, 10.6F, 1F); setRotation(Rope2, -0.3346145F, 0F, 0F); Metal2.setRotationPoint(-3.8F, 13.6F, 0F); setRotation(Metal2, -0.3346145F, 0F, 0F); Seat1.setRotationPoint(-0.5F, 11.6F, 4.3F); setRotation(Seat1, -0.5483867F, 0F, 0F); Seat2.setRotationPoint(-0.5F, 8.9F, -1.2F); setRotation(Seat2, -0.2881364F, 0F, 0F); } else { LeftHindLeg1.setRotationPoint(1.5F, 13F, 5F); LeftHindLeg1.rotateAngleX = -0.2974289F; LeftHindLeg2.setRotationPoint(0F, 4.3F, -0.3F); LeftHindLeg2.rotateAngleX = leftTibia; LeftHindLeg3.setRotationPoint(0F, 3.55F, 0.2F); LeftHindLeg3.rotateAngleX = leftMetatarus; RightHindLeg1.setRotationPoint(-2.5F, 13F, 5F); RightHindLeg1.rotateAngleX = -0.2974289F; RightHindLeg2.setRotationPoint(0F, 4.3F, -0.3F); RightHindLeg2.rotateAngleX = rightTibia; RightHindLeg3.setRotationPoint(0F, 3.55F, 0.2F); RightHindLeg3.rotateAngleX = rightMetatarus; Torso.setRotationPoint(-0.5F, 12.5F, 1F); Torso.rotateAngleX = 1.496439F; Tail1.setRotationPoint(-1F, 14.3F, 6F); Tail1.rotateAngleX = 1.315962F; Tail2.setRotationPoint(0.5F, 6F, 0.5F); Tail2.rotateAngleX = -0.041605F; Tail3.setRotationPoint(0F, 6.5F, 0.5F); Tail3.rotateAngleX = 0.001605F; //Saddle\\ TODO Pad1.setRotationPoint(-0.5F, 9.3F, -2.5F); setRotation(Pad1, -0.0650564F, 0F, 0F); Pad2.setRotationPoint(-0.5F, 9.4F, -1.5F); setRotation(Pad2, -0.0743572F, 0F, 0F); Pad3.setRotationPoint(-1F, 9.5F, 0.2F); setRotation(Pad3, -0.0650564F, 0F, 0F); Pad4.setRotationPoint(-0.5F, 9.8F, 4.1F); setRotation(Pad4, -0.0650564F, 0F, 0F); PadPart1.setRotationPoint(1F, 9.23F, -3.5F); setRotation(PadPart1, -0.0650564F, 0F, 0F); PadPart2.setRotationPoint(-2F, 9.2F, -3.5F); setRotation(PadPart2, -0.0650564F, 0F, 0F); Rope1.setRotationPoint(1.8F, 9.6F, 0F); setRotation(Rope1, 0F, 0F, 0F); Metal1.setRotationPoint(1.8F, 13.6F, 0F); setRotation(Metal1, 0F, 0F, 0F); Rope2.setRotationPoint(-2.8F, 9.6F, 0F); setRotation(Rope2, 0F, 0F, 0F); Metal2.setRotationPoint(-3.8F, 13.6F, 0F); setRotation(Metal2, 0F, 0F, 0F); Seat1.setRotationPoint(-0.5F, 8.7F, -1.5F); setRotation(Seat1, -0.0650484F, 0F, 0F); Seat2.setRotationPoint(-0.5F, 9F, 3.2F); setRotation(Seat2, -0.0650484F, 0F, 0F); this.RightHindLeg1.rotateAngleX = rightFemur + MathHelper.cos(par2 * 0.4662F) * 1.4F * par3; this.LeftHindLeg1.rotateAngleX = leftFemur + MathHelper.cos(par2 * 0.4662F + (float)Math.PI) * 1.4F * par3; this.RightLeg.rotateAngleX = MathHelper.cos(par2 * 0.4662F + (float)Math.PI) * 1.4F * par3; this.LeftLeg.rotateAngleX = MathHelper.cos(par2 * 0.4662F) * 1.4F * par3; } this.Head.rotateAngleZ = entityzertum.getInterestedAngle(par4) + entityzertum.getShakeAngle(par4, 0.0F); this.Mane1.rotateAngleZ = entityzertum.getShakeAngle(par4, -0.08F); this.Torso.rotateAngleZ = entityzertum.getShakeAngle(par4, -0.16F); this.Tail1.rotateAngleZ = entityzertum.getShakeAngle(par4, -0.32F); }else{ this.RightHumerus.rotateAngleX = 0.3869765F + MathHelper.cos(par2 * 0.6662F) * 1.4F * par3; this.LeftHumerus.rotateAngleX = 0.3869765F + MathHelper.cos(par2 * 0.6662F + (float)Math.PI) * 1.4F * par3; this.RightFemur.rotateAngleX = MathHelper.cos(par2 * 0.6662F) * 1.4F * par3; this.LeftFemur.rotateAngleX = MathHelper.cos(par2 * 0.6662F + (float)Math.PI) * 1.4F * par3; } } 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 par1, float par2, float par3, float par4, float par5, float par6, Entity par7Entity) { super.setRotationAngles(par1, par2, par3, par4, par5, par6, par7Entity); EntityZertumEntity entityzertum = (EntityZertumEntity)par7Entity; if(!entityzertum.hasEvolved()){ this.Head.rotateAngleX = par5 / (280F / (float)Math.PI); this.Head.rotateAngleY = par4 / (180F / (float)Math.PI); this.Neck.rotateAngleX = vertebrae + par5 / (280F / (float)Math.PI); this.Mane2.rotateAngleX = mane2StartingRotation + par5 / (280F / (float)Math.PI); this.Mane1.rotateAngleY = par4 / (180F / (float)Math.PI); }else{ this.TopJawCenter.rotateAngleX = par5 / (280F / (float)Math.PI); this.TopJawCenter.rotateAngleY = par4 / (180F / (float)Math.PI); this.BottomJawCenter.rotateAngleX = par5 / (280F / (float)Math.PI); this.BottomJawCenter.rotateAngleY = par4 / (180F / (float)Math.PI); this.Throat.rotateAngleX = + par5 / (280F / (float)Math.PI); } } } Renderer: package common.zeroquest.client.renderer.entity; import org.lwjgl.opengl.GL11; import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.model.ModelBase; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.WorldRenderer; import net.minecraft.client.renderer.entity.RenderLiving; import net.minecraft.client.renderer.entity.RenderManager; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.EntityLivingBase; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import common.zeroquest.client.renderer.entity.layers.LayersZertum; import common.zeroquest.entity.EntityZertum; import common.zeroquest.lib.Constants; @SideOnly(Side.CLIENT) public class RenderZertum extends RenderLiving { private static final ResourceLocation zertumTextures = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/zertum.png"); private static final ResourceLocation evolvedZertumTextures = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/evo/zertum.png"); private static final ResourceLocation evolvedTamedZertumTextures = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/evo/zertum_tame.png"); private static final ResourceLocation tamedZertumTextures = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/zertum_tame.png"); private static final ResourceLocation angryZertumTextures = new ResourceLocation(Constants.modid + ":" + "textures/entity/zertum/zertum_angry.png"); public RenderZertum(RenderManager p_i46128_1_, ModelBase p_i46128_2_, float p_i46128_3_){ super(p_i46128_1_, p_i46128_2_, p_i46128_3_); this.addLayer(new LayersZertum(this)); } public void func_177135_a(EntityZertum p_177135_1_, double p_177135_2_, double p_177135_4_, double p_177135_6_, float p_177135_8_, float p_177135_9_) { if (p_177135_1_.isWolfWet()) { float f2 = p_177135_1_.getBrightness(p_177135_9_) * p_177135_1_.getShadingWhileWet(p_177135_9_); GlStateManager.color(f2, f2, f2); } super.doRender((EntityLiving)p_177135_1_, p_177135_2_, p_177135_4_, p_177135_6_, p_177135_8_, p_177135_9_); } protected ResourceLocation getEntityTexture(EntityZertum entity) { if(!entity.hasEvolved()){ if(entity.isTamed()){ return tamedZertumTextures; }else if(entity.isAngry()){ return angryZertumTextures; }else if(!entity.isTamed() && !entity.isAngry()){ return zertumTextures; } }else if(entity.hasEvolved()){ if(entity.isTamed()){ return evolvedTamedZertumTextures; }else if(!entity.isTamed() && !entity.isAngry()){ return evolvedZertumTextures; } } return null; } public void doRender(EntityLiving p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_) { this.func_177135_a((EntityZertum)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); } public void doRender(EntityLivingBase p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_) { this.func_177135_a((EntityZertum)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); } protected ResourceLocation getEntityTexture(Entity p_110775_1_) { return this.getEntityTexture((EntityZertum)p_110775_1_); } @Override public void passSpecialRender(EntityLivingBase entityLivingBase, double p_77033_2_, double p_77033_4_, double p_77033_6_) { EntityZertum dog = (EntityZertum)entityLivingBase; if(!dog.getDogName().isEmpty()) super.passSpecialRender(entityLivingBase, p_77033_2_, p_77033_4_, p_77033_6_); } @Override protected void func_177069_a(Entity entity, double x, double y, double z, String displayName, float scale, double distanceFromPlayer) { super.func_177069_a(entity, x, y, z, displayName, scale, distanceFromPlayer); EntityZertum dog = (EntityZertum)entity; if (distanceFromPlayer < 100.0D) { y += (double)((float)this.getFontRendererFromRenderManager().FONT_HEIGHT * 1.15F * 0.016666668F * 0.7F); String tip = dog.mode.getMode().getTip(); String label = String.format("%s[%d]", tip, dog.getDogHunger()); if (dog.isPlayerSleeping()) this.renderLivingLabel(dog, label, x, y - 0.5D, z, 64, 0.7F); else this.renderLivingLabel(dog, label, x, y, z, 64, 0.7F); } if (distanceFromPlayer < 100.0D) { y += (double)((float)this.getFontRendererFromRenderManager().FONT_HEIGHT * 1.15F * 0.016666668F * 0.5F); if(this.renderManager.livingPlayer.isSneaking()) { EntityLivingBase owner = dog.getOwnerEntity(); if(owner != null) this.renderLivingLabel(dog, owner.getDisplayName().getUnformattedText(), x, y, z, 5, 0.5F); else this.renderLivingLabel(dog, dog.getOwnerId(), x, y, z, 5, 0.5F); } } } protected void renderLivingLabel(Entity p_147906_1_, String p_147906_2_, double p_147906_3_, double p_147906_5_, double p_147906_7_, int p_147906_9_, float scale) { double d3 = p_147906_1_.getDistanceSqToEntity(this.renderManager.livingPlayer); if (d3 <= (double)(p_147906_9_ * p_147906_9_)) { FontRenderer fontrenderer = this.getFontRendererFromRenderManager(); float f1 = 0.016666668F * scale; GlStateManager.pushMatrix(); GlStateManager.translate((float)p_147906_3_ + 0.0F, (float)p_147906_5_ + p_147906_1_.height + 0.5F, (float)p_147906_7_); GL11.glNormal3f(0.0F, 1.0F, 0.0F); GlStateManager.rotate(-this.renderManager.playerViewY, 0.0F, 1.0F, 0.0F); GlStateManager.rotate(this.renderManager.playerViewX, 1.0F, 0.0F, 0.0F); GlStateManager.scale(-f1, -f1, f1); GlStateManager.disableLighting(); GlStateManager.depthMask(false); GlStateManager.disableDepth(); GlStateManager.enableBlend(); GlStateManager.tryBlendFuncSeparate(770, 771, 1, 0); Tessellator tessellator = Tessellator.getInstance(); WorldRenderer worldrenderer = tessellator.getWorldRenderer(); byte b0 = 0; if (p_147906_2_.equals("deadmau5")) b0 = -10; GlStateManager.disableTexture2D(); worldrenderer.startDrawingQuads(); int j = fontrenderer.getStringWidth(p_147906_2_) / 2; worldrenderer.setColorRGBA_F(0.0F, 0.0F, 0.0F, 0.25F); worldrenderer.addVertex((double)(-j - 1), (double)(-1 + b0), 0.0D); worldrenderer.addVertex((double)(-j - 1), (double)(8 + b0), 0.0D); worldrenderer.addVertex((double)(j + 1), (double)(8 + b0), 0.0D); worldrenderer.addVertex((double)(j + 1), (double)(-1 + b0), 0.0D); tessellator.draw(); GlStateManager.enableTexture2D(); fontrenderer.drawString(p_147906_2_, -fontrenderer.getStringWidth(p_147906_2_) / 2, b0, 553648127); GlStateManager.enableDepth(); GlStateManager.depthMask(true); fontrenderer.drawString(p_147906_2_, -fontrenderer.getStringWidth(p_147906_2_) / 2, b0, -1); GlStateManager.enableLighting(); GlStateManager.disableBlend(); GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); GlStateManager.popMatrix(); } } } Also, sorry for the post being so long
  5. Awh man and thanks guys. I'll just make a larger model on techne and make it smaller when rendering it
  6. Ok.. I'm trying to make Blade Wolf (from MGR) on techne but I'm trying to use other shapes other than cubes, like cones and stuff for the fur. Or is there any possible way I make the cubes between the numbers? (like instead of 1, I can use 0.5 or 1.5).
  7. I found the problem, I accidentally left something that was not being used at all
  8. Ok, So I nulled out the following: //MinecraftForge.EVENT_BUS.register(new LivingEvents()); //TODO ... Log.info("Loading Entities and Ore Dictionary..."); //ModEntities.loadCreatures(); //ModEntities.loadOthers(); .... //ModEntities.loadDarkCreatures(); //ModEntities.loadSpawns(); if(Constants.DEF_DARKLOAD == true){ //ModEntities.loadDarkSpawns(); } Log.info("Loading Crucial Stuff..."); //proxy.registerRenderThings(); //proxy.registerChestItems(); Somewhere around here was causing the problem but not sure where ---EDIT---- It looks like the throwable entities I am registering are causing the problem (the ones in ModEntites.loadOthers() ), I'm testing to see which ones are causing the problem
  9. Here's my Github: https://github.com/NovaViper/ZeroQuest/ And I can't turn off certain parts of the mod or it cause the game to crash on me
  10. Oh, I also forgot to mention, when the Wither Boss attacks, the skulls don't spawn and thats when the errors appear
  11. It's not mine though, the errors appears only when I spawn the Wither Boss. None of my entities should cause an error to the Wither boss, especially since I don't even have them spawning
  12. I'm getting errors EVERYTIME the Wither attacks something, it's making the game really slow and it seems to be going on only on the 11.14.1.1333 and 11.14.1.1334 builds. Log https://gist.github.com/NovaViper/7c83e938e4ee637dd8ec
  13. It's after it's registered ModEntities.loadCreatures(); ModEntities.loadOthers(); ModEntities.loadSpawns(); --EDIT--- I just noticed that there's a method that registers some more entities after the spawns are loaded, and now it works now (and spawning the entities also). Thanks!
  14. addSpawn(EntityZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.bioZone, ModBiomes.nileSavanna, ModBiomes.nileSavannaPlateau, ModBiomes.nileSwampland, ModBiomes.pinkZone);
  15. The entity registry method, I had moved the method so that you can see which methods are causing the problem
  16. I'm getting an immediate crash when the client starts to load the entity spawns, here is the error And here is what I have in my code public static void loadSpawns(){ addSpawn(EntityZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.bioZone, ModBiomes.nileSavanna, ModBiomes.nileSavannaPlateau, ModBiomes.nileSwampland, ModBiomes.pinkZone); addSpawn(EntityRedZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.redSeed); addSpawn(EntityDestroZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.destroZone, ModBiomes.destroZoneHills); addSpawn(EntityIceZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.blueTaiga, ModBiomes.blueTaigaHills, ModBiomes.blueColdTaiga, ModBiomes.blueColdTaigaHills); addSpawn(EntityForisZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.nileJungle, ModBiomes.nileJungleHills, ModBiomes.nileJungleEdge, ModBiomes.nileSwampland); addSpawn(EntityMetalZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.walRockland); addSpawn(EntityJakan.class, 100, 2, 3, EnumCreatureType.CREATURE, ModBiomes.walRockland); addSpawn(EntityKortor.class, 100, 2, 3, EnumCreatureType.CREATURE, ModBiomes.nileSavanna, ModBiomes.nileSavannaPlateau, ModBiomes.nileJungle, ModBiomes.nileJungleEdge, ModBiomes.nileJungleHills); addSpawn(EntityRiggator.class, 100, 2, 3, EnumCreatureType.MONSTER, ModBiomes.bioZone, ModBiomes.nileSwampland, ModBiomes.nileMesa, ModBiomes.nileMesaPlateau, ModBiomes.nileMesaPlateau_F); if(Constants.DEF_DARKLOAD == true){ addSpawn(EntityDarkZertum.class, 100, 4, 5, EnumCreatureType.CREATURE, ModBiomes.darkWasteland); addSpawn(EntityKurr.class, 100, 2, 3, EnumCreatureType.MONSTER, ModBiomes.darkWasteland); } } public static void addSpawn(Class entityClass, int weightedProb, int min, int max, EnumCreatureType typeOfCreature, BiomeGenBase... biomes){ EntityRegistry.addSpawn(entityClass, weightedProb, min, max, typeOfCreature, biomes); }
  17. It seems to work, because if the attribute is set to 0, it instantly kills the entity (also in the debug, it says "Infinity" instead of a number). When I hit the grenade with a regular Zertum, it says like 5.0 - 19.0, for Metal Zertums though (when the attribute is set to 5.0), it says 0.0 - 3.0. ===EDIT=== Yeah, it's working. Thanks!
  18. Ok, I can't tell if it's working exactly but I do notice that it takes alot more grenades to kill it than with normal Zertums, also here is some debug numbers I got [20:12:54] [server thread/INFO] [sTDOUT]: [common.zeroquest.command.CommandZeroQuest$TameModifier:modify:231]: Tamed! //Taming Metal Zertum 2.0 2.0 0.0 4.6 With a normal Zertum, it takes 2 grenades to kill it, but with this on the Metal Zertums, it takes like, 8 or 9 grenades.
  19. I'm getting a crash saying Here is my code now @SubscribeEvent public void blastResist(LivingHurtEvent event, EntityMetalZertum entity){ if(event.entity instanceof EntityMetalZertum){ this.entity = entity; if(event.source.isExplosion()){ event.ammount = (float)(event.ammount /entity.getEntityAttribute(entity.blastResist).getAttributeValue()); } } System.out.println(event.ammount); }
  20. I can't use the same thing again, it'll glitch it up. What I'm trying to do is take the damage and divide it. Like this @SubscribeEvent public void blastResist(LivingHurtEvent event){ if(event.entity instanceof EntityMetalZertum){ EntityMetalZertum entity; if(event.source.isExplosion()){ event.ammount = event.ammount / entity.getEntityAttribute(entity.blastResist).getAttributeValue(); } } } Also the ammount is a float, not a double
  21. What I mean is isn't there suppose to be some kind of interger or double I'm suppose to get? Because right now, it says error about the souce nor convertable to double on Eclipse
  22. How do I get the explosion damage type? I'm not exactly sure if I'm doing this correctly, here is what I have @SubscribeEvent public void blastResist(LivingHurtEvent event){ if(event.entity instanceof EntityMetalZertum){ EntityMetalZertum entity; if(event.source.isExplosion()){ event.ammount = event.source / entity.blastResist; } } }
  23. Ok, here's what I started to do but I'm not sure how get the damage the entity has taken @SubscribeEvent public void blastResist(LivingHurtEvent event){ if(event.entity instanceof EntityMetalZertum){ if(event.source.isExplosion()){ } } }
  24. [glow=red,2,300]THE MOD HAS BEEN DISCONTINUED! LOOK FOR MORE INFO HERE[/glow] [glow=green,2,300]Zero Quest[/glow] by NovaViper(Formally QueenViper21 and NViper21) This mod adds more mobs and tameable creatures, items, weapons, blocks, biomes and dimensions! Toggle Dark Load, dark particle spawn, all tame Nile creature automatic emergency regeneration and much more in either the configurations files or the in-game Gui configurations! Want to track the mod's progress and updates? Like the mod's Facebook page! https://www.facebook.com/ZeroQuestMod Have any suggestions? Post on them on the wiki! http://zeroquest.wikia.com/wiki/Board:Suggestions'>http://zeroquest.wikia.com/wiki/Board:Suggestions Have any issues or bugs? Post them here! http://zeroquest.wikia.com/wiki/Board:Mod_Support'>http://zeroquest.wikia.com/wiki/Board:Mod_Support OR https://github.com/NovaViper/ZeroQuest/issues Information about the crafting, dimension travel and much more are available on the wiki! http://zeroquest.wikia.com Download the mod from: http://minecraft.curseforge.com/mc-mods/221194-forge-zero-quest Thread page also on http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/2387925-1-6-4-1-7-10-1-8-zero-quest-more-mobs-blocks [spoiler=COMPATIBILITY] Compatible as of 1.7.10 TooManyItems DamageIndicatorsMod Optifine Dragon Mounts CraftGuide SmartMoving JourneyMap ZyinsHUD If anyone wants to test compatibility, post test results here and I'll add them to this list [spoiler=CHANGELOG]https://github.com/NovaViper/ZeroQuest/blob/master/changelog.txt [spoiler=TO-DO LIST]http://zeroquest.wikia.com/wiki/To-do_List [spoiler=ISSUES NOTE]If anyone has any issues, please either PM me or put them on the Github issue tracker (https://github.com/NovaViper/ZeroQuest/issues). I cannot receive them on the curse pages because they do not notify me about them. [spoiler=LICENSE NOTE]Though this mod is under the All Rights Reserved License, I allow people to add this mod into modpacks, do spotlights on it, and use the source code to help modders and developers as long as they give credit to the mod and the me AND you redirect to any of my mod's page links that are listed below. I DO NOT allow the modification of this mod unless you notice something off about the mod and its code. Also, I DO NOT allow the redistribution of my mod's source code. Also, I ABSOLUTELY do not allow the repost and monetisation of my mods.. so if you see websites that are not either the following: Minecraft Forge Fourms/Minecraft Forge, Minecraft CurseForge, Curse, MinecraftFourms, the Zero Quest Wikia, The Zero Quest Facebook Page, The Zero Quest Tumblr Page, Github, you are VERY likely to be a victim of mod fraud and installing an outdated version of the mod AND risk getting a malware from the download by not downloading from the websites listed. If you see websites that violate this, IMMEDIATELY PM me with the link given.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.