コード例 #1
0
 public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5) {
   super.setRotationAngles(f, f1, f2, f3, f4, f5, null);
   leg1.rotateAngleX = MathHelper.cos(f * 0.6662F) * 1.0F * f1;
   leg2.rotateAngleX = MathHelper.cos(f * 0.6662F + (float) Math.PI) * 1.0F * f1;
   leg1.rotateAngleZ = MathHelper.cos(f * 0.6662F) * 1.0F * f1;
   leg2.rotateAngleZ = MathHelper.cos(f * 0.6662F + (float) Math.PI) * 1.0F * f1;
 }
コード例 #2
0
  @Override
  public void setRotationAngles(
      float f, float f1, float f2, float f3, float f4, float f5, Entity entity) {
    if (!(entity instanceof EntityClaymation)) return;

    EntityClaymation clay = (EntityClaymation) entity;

    head.rotateAngleY = f3 / (180F / (float) Math.PI);
    head.rotateAngleX = f4 / (180F / (float) Math.PI);

    legLeft.rotateAngleX = -1.5F * this.simplifyAngle(f, 13.0F) * f1;
    legRight.rotateAngleX = 1.5F * this.simplifyAngle(f, 13.0F) * f1;
    armLeft.rotateAngleX = 0.55F * this.simplifyAngle(f, 13.0F) * f1;
    armRight.rotateAngleX = -0.55F * this.simplifyAngle(f, 13.0F) * f1;

    if (clay.getUtilityInt() > 0) {
      armRight.rotateAngleX = -0.556F;
      armLeft.rotateAngleX = -0.446F;
      head.rotateAngleX = 0.336F;
      armRight.rotateAngleZ = -0.246F;
      armLeft.rotateAngleZ = 0.246F;

      legLeft.rotateAngleX = 0.656F;
      legRight.rotateAngleX = -0.656F;
    } else {
      if (clay.getUtilityInt2() > 0) {
        armRight.rotateAngleZ = -0.246F + this.simplifyAngle(clay.getUtilityInt2(), 10.0F) * 0.246F;
        armLeft.rotateAngleZ = 0.246F + this.simplifyAngle(clay.getUtilityInt2(), 10.0F) * -0.246F;
      }
    }
  }
コード例 #3
0
  @Override
  public void setRotationAngles(
      float f, float f1, float f2, float f3, float f4, float f5, Entity entity) {
    if (!(entity instanceof EntityTimeController)) return;

    EntityTimeController ctrl = (EntityTimeController) entity;

    if (ctrl.ticksExisted % 4 == 0
        || ctrl.getFluxTicks() > 0
        || ctrl.hurtTime > 0
        || ctrl.getSpazTicks() > 0) {
      ModelRenderer cube = this.getRandomCube(entity.worldObj.rand);

      if (ctrl.ticksExisted % 7 == 0) {
        cube.offsetX += MathHelper.cos(ctrl.ticksExisted + ctrl.getEntityId()) * 0.45F;

      } else if (ctrl.ticksExisted % 13 == 0) {
        cube.offsetY += MathHelper.cos(ctrl.ticksExisted * ctrl.getEntityId()) * 0.45F;

      } else if (ctrl.ticksExisted % 3 == 0) {
        cube.offsetZ += MathHelper.cos(ctrl.ticksExisted - ctrl.getEntityId()) * 0.45F;
      }

      cube.offsetX += MathHelper.cos(ctrl.ticksExisted + ctrl.getEntityId()) * 0.25F;
      cube.offsetY += MathHelper.cos(ctrl.ticksExisted * ctrl.getEntityId()) * 0.25F;
      cube.offsetZ += MathHelper.cos(ctrl.ticksExisted - ctrl.getEntityId()) * 0.25F;

      if (Math.abs(cube.offsetX) > 0.5F) cube.offsetX = 0.0F;
      if (Math.abs(cube.offsetY) > 0.5F) cube.offsetY = 0.0F;
      if (Math.abs(cube.offsetZ) > 0.5F) cube.offsetZ = 0.0F;
    }

    center.offsetY = 0.0F;
    center.offsetX = 0.0F;
    center.offsetZ = 0.0F;
    center.rotateAngleX = this.simplifyAngle(ctrl.ticksExisted, 120.0F) * 0.05F;
    center.rotateAngleY = this.simplifyAngle(ctrl.ticksExisted + 72, 120.0F) * 0.25F;
    center.rotateAngleZ = this.simplifyAngle(ctrl.ticksExisted + 35, 120.0F) * 0.05F;

    if (ctrl.getFluxTicks() > 0) {
      center.rotateAngleY =
          (float) (Math.sin(Math.PI * this.simplifyAngle(ctrl.ticksExisted, 10.0F)));
      center.rotateAngleX =
          (float) (Math.sin(Math.PI * this.simplifyAngle(ctrl.ticksExisted + 6, 10.0F)));
      center.rotateAngleZ =
          (float) (Math.sin(Math.PI * this.simplifyAngle(ctrl.ticksExisted + 2, 10.0F)));
    } else if (ctrl.getLeapTicks() > 0) {
      center.offsetY = this.simplifyAngle(ctrl.ticksExisted, 30.0F) * 0.725F;
      center.offsetX = this.simplifyAngle(ctrl.ticksExisted, 40.0F) * 0.725F;
      center.offsetZ = this.simplifyAngle(ctrl.ticksExisted, 20.0F) * 0.725F;
    } else if (ctrl.getPurgeTicks() > 0) {
      center.rotateAngleY = (float) (this.simplifyAngle(ctrl.ticksExisted, 20.0F) * Math.PI);
    } else if (ctrl.getSpazTicks() > 0) {
      center.rotateAngleZ =
          (float) (Math.sin(Math.PI * this.simplifyAngle(ctrl.ticksExisted + 2, 10.0F)));
      center.offsetX = ctrl.worldObj.rand.nextFloat() - ctrl.worldObj.rand.nextFloat();
    }
  }
コード例 #4
0
ファイル: ModelCowTFC.java プロジェクト: KeplerGaming/TFCraft
  public ModelCowTFC() {
    super(12, 0.0F);
    this.head = new ModelRenderer(this, 0, 0);
    this.head.addBox(-4.0F, -4.0F, -6.0F, 8, 8, 6, 0.0F);
    this.head.setRotationPoint(0.0F, 4.0F, -8.0F);

    horn1 = new ModelRenderer(this, 22, 0);
    horn1.addBox(0F, 0F, 0F, 1, 3, 1, 0.15F);
    horn1.setRotationPoint(-5.5F, -2.5F, -2F);
    horn1.rotateAngleZ = (float) -Math.PI / 2;

    horn1b = new ModelRenderer(this, 22, 0);
    horn1b.addBox(0, -2.1f, -0.5f, 1, 3, 1, 0F);
    horn1b.setRotationPoint(0f, 0f, 0f);
    horn1b.rotateAngleX = (float) Math.PI / 3f;
    horn1b.rotateAngleY = (float) -Math.PI / 12f;
    horn1.addChild(horn1b);

    this.head.addChild(horn1);
    horn2 = new ModelRenderer(this, 22, 0);
    horn2.addBox(0F, -3F, 0F, 1, 3, 1, 0.15F);
    horn2.setRotationPoint(5.5F, -2.5F, -2F);
    horn2.rotateAngleZ = (float) -Math.PI / 2;

    horn2b = new ModelRenderer(this, 22, 0);
    horn2b.addBox(0f, -0.8F, -0.5f, 1, 3, 1, 0F);
    horn2b.setRotationPoint(0F, 0F, 0F);
    horn2b.rotateAngleX = (float) -Math.PI / 3F;
    horn2b.rotateAngleY = (float) -Math.PI / 12F;
    horn2.addChild(horn2b);

    this.head.addChild(horn2);
    this.body = new ModelRenderer(this, 18, 4);
    this.body.addBox(-6.0F, -10.0F, -7.0F, 12, 18, 10, 0.0F);
    this.body.setRotationPoint(0.0F, 5.0F, 2.0F);
    this.udders = new ModelRenderer(this, 18, 4);
    this.udders.setRotationPoint(0.0F, 5.0F, 2.0F);
    this.udders.setTextureOffset(52, 0).addBox(-2.0F, 2.0F, -8.0F, 4, 6, 1);

    --this.leg1.rotationPointX;
    ++this.leg2.rotationPointX;
    this.leg1.rotationPointZ += 0.0F;
    this.leg2.rotationPointZ += 0.0F;
    --this.leg3.rotationPointX;
    ++this.leg4.rotationPointX;
    --this.leg3.rotationPointZ;
    --this.leg4.rotationPointZ;
    this.field_78151_h += 2.0F;
  }
コード例 #5
0
ファイル: ModelFinch.java プロジェクト: GotoLink/Project-Zulu
 @Override
 public void setLivingAnimations(
     EntityLivingBase par1EntityLiving, float par2, float par3, float par4) {
   EntityFinch var5 = (EntityFinch) par1EntityLiving;
   if (var5.getEntityState() == EntityStates.posture) {
     /* On Ground Idle Standing Animation */
   } else {
     winglef.rotateAngleZ =
         MathHelper.cos(var5.worldObj.getWorldTime() * 0.6662F * 2f) * 1.8F * 0.5f;
     wingrig.rotateAngleZ =
         MathHelper.cos(var5.worldObj.getWorldTime() * 0.6662F * 2f + (float) Math.PI)
             * 1.8F
             * 0.5f;
     tail.rotateAngleX =
         MathHelper.cos(var5.worldObj.getWorldTime() * 0.6662F * 2f + (float) Math.PI) * 0.3f;
   }
 }
コード例 #6
0
 protected void convertToChild(ModelRenderer parParent, ModelRenderer parChild) {
   parChild.rotationPointX -= parParent.rotationPointX;
   parChild.rotationPointY -= parParent.rotationPointY;
   parChild.rotationPointZ -= parParent.rotationPointZ;
   parChild.rotateAngleX -= parParent.rotateAngleX;
   parChild.rotateAngleY -= parParent.rotateAngleY;
   parChild.rotateAngleZ -= parParent.rotateAngleZ;
   parParent.addChild(parChild);
 }
コード例 #7
0
  public RenderPlayerTFC() {
    super();
    this.modelBipedMain = (ModelBiped) this.mainModel;
    this.modelArmorChestplate = new ModelBiped(1.0F);
    this.modelArmor = new ModelBiped(0.5F);
    // Bronze
    plume = new ModelRenderer(modelArmorChestplate, 40, 0);
    plume2 = new ModelRenderer(modelArmorChestplate, 40, 0);
    plume.addBox(-1, -6, -10, 2, 6, 10, 0.5f);
    plume2.addBox(-1, -6, -10, 2, 6, 10);
    plume.setRotationPoint(0, -8, 2);
    plume2.setRotationPoint(0, -2, 4);
    plume2.rotateAngleX = (float) (Math.PI / -3f);
    // Iron
    HornR1 = new ModelRenderer(modelArmorChestplate, 40, 0);
    HornR1.addBox(-6, -1.5f, -1.5f, 3, 3, 6);
    HornL1 = new ModelRenderer(modelArmorChestplate, 40, 0);
    HornL1.addBox(6, -1.5f, -1.5f, 3, 3, 6);
    HornR1.setRotationPoint(-6, -6, 5);
    HornL1.setRotationPoint(6, -6, 8);
    HornR1.rotateAngleY = (float) (Math.PI / -2);
    HornR1.rotateAngleX = (float) Math.PI * (-1f / 12f);
    HornL1.rotateAngleY = (float) (Math.PI / 2);
    HornL1.rotateAngleX = (float) Math.PI * (-1f / 12f);
    HornR2 = new ModelRenderer(modelArmorChestplate, 40, 9);
    HornR2.addBox(0, 0, -5f, 2, 2, 5);
    HornR2.setRotationPoint(-6, 0f, 2f);
    HornR2.rotateAngleX = (float) Math.PI * (6f / 12f);
    HornR2.rotateAngleZ = (float) Math.PI * (1f / 6f);
    HornL2 = new ModelRenderer(modelArmorChestplate, 40, 9);
    HornL2.addBox(0, 0, -5f, 2, 2, 5);
    HornL2.setRotationPoint(7, 0f, 2f);
    HornL2.rotateAngleX = (float) Math.PI * (6f / 12f);
    HornL2.rotateAngleZ = (float) Math.PI * (-1f / 6f);

    modelArmorChestplate.bipedHead.addChild(plume);
    modelArmorChestplate.bipedHead.addChild(plume2);
    modelArmorChestplate.bipedHead.addChild(HornR1);
    modelArmorChestplate.bipedHead.addChild(HornL1);
    HornR1.addChild(HornR2);
    HornL1.addChild(HornL2);
  }
コード例 #8
0
 public ModelWorker() {
   bod = new ModelRenderer(this, 10, 0);
   bod.addBox(-2F, -4F, -2F, 4, 8, 4, 0F);
   bod.setRotationPoint(0F, 14F, 0F);
   bod.rotateAngleX = 0.3839724F;
   bod.rotateAngleY = 0F;
   bod.rotateAngleZ = 0F;
   bod.mirror = false;
   leg1 = new ModelRenderer(this, 33, 21);
   leg1.addBox(0F, 0F, -1F, 3, 8, 3, 0F);
   leg1.setRotationPoint(2F, 16F, 0F);
   leg1.rotateAngleX = 0F;
   leg1.rotateAngleY = 0F;
   leg1.rotateAngleZ = 0F;
   leg1.mirror = false;
   leg2 = new ModelRenderer(this, 33, 21);
   leg2.addBox(-3F, 0F, -1F, 3, 8, 3, 0F);
   leg2.setRotationPoint(-2F, 16F, 0F);
   leg2.rotateAngleX = 0F;
   leg2.rotateAngleY = 0F;
   leg2.rotateAngleZ = 0F;
   leg2.mirror = false;
   head = new ModelRenderer(this, 7, 20);
   head.addBox(-2.5F, -5F, -4F, 5, 5, 7, 0F);
   head.setRotationPoint(0F, 12F, -2F);
   head.rotateAngleX = 0F;
   head.rotateAngleY = 0F;
   head.rotateAngleZ = 0F;
   head.mirror = false;
   light = new ModelRenderer(this, 28, 0);
   light.addBox(-1.5F, -6F, -1.5F, 3, 5, 3, 0F);
   light.setRotationPoint(0F, 12F, -2F);
   light.rotateAngleX = 0F;
   light.rotateAngleY = 0F;
   light.rotateAngleZ = 0F;
   light.mirror = false;
 }
コード例 #9
0
 public ModelTreeFrog() {
   frontleft_leg = new ModelRenderer(this, 12, 19);
   frontleft_leg.addBox(-2F, 0.0F, -2F, 4, 1, 4, 0.0F);
   frontleft_leg.setRotationPoint(2.0F, 23F, -3F);
   frontleft_leg.rotateAngleX = 0.0F;
   frontleft_leg.rotateAngleY = 0.0F;
   frontleft_leg.rotateAngleZ = 0.0F;
   frontleft_leg.mirror = false;
   frontright_leg = new ModelRenderer(this, 12, 14);
   frontright_leg.addBox(-2F, 0.0F, -2F, 4, 1, 4, 0.0F);
   frontright_leg.setRotationPoint(-2F, 23F, -3F);
   frontright_leg.rotateAngleX = 0.0F;
   frontright_leg.rotateAngleY = 0.0F;
   frontright_leg.rotateAngleZ = 0.0F;
   frontright_leg.mirror = false;
   body = new ModelRenderer(this, 28, 8);
   body.addBox(-2F, -5F, -2F, 4, 9, 4, 0.0F);
   body.setRotationPoint(0.0F, 21F, 1.0F);
   body.rotateAngleX = 1.570796F;
   body.rotateAngleY = 0.0F;
   body.rotateAngleZ = 0.0F;
   body.mirror = false;
   rear_right_leg = new ModelRenderer(this, 0, 16);
   rear_right_leg.addBox(-3F, 0.0F, -2F, 3, 5, 3, 0.0F);
   rear_right_leg.setRotationPoint(-2F, 19F, 4F);
   rear_right_leg.rotateAngleX = 0.0F;
   rear_right_leg.rotateAngleY = 0.0F;
   rear_right_leg.rotateAngleZ = 0.0F;
   rear_right_leg.mirror = false;
   rear_left_leg = new ModelRenderer(this, 0, 8);
   rear_left_leg.addBox(0.0F, 0.0F, -2F, 3, 5, 3, 0.0F);
   rear_left_leg.setRotationPoint(2.0F, 19F, 4F);
   rear_left_leg.rotateAngleX = 0.0F;
   rear_left_leg.rotateAngleY = 0.0F;
   rear_left_leg.rotateAngleZ = 0.0F;
   rear_left_leg.mirror = false;
   right_eye = new ModelRenderer(this, 0, 0);
   right_eye.addBox(-2F, -1F, -1F, 2, 2, 2, 0.0F);
   right_eye.setRotationPoint(-1F, 19F, -1F);
   right_eye.rotateAngleX = 0.0F;
   right_eye.rotateAngleY = 0.0F;
   right_eye.rotateAngleZ = 0.0F;
   right_eye.mirror = false;
   left_eye = new ModelRenderer(this, 0, 4);
   left_eye.addBox(0.0F, -1F, -1F, 2, 2, 2, 0.0F);
   left_eye.setRotationPoint(1.0F, 19F, -1F);
   left_eye.rotateAngleX = 0.0F;
   left_eye.rotateAngleY = 0.0F;
   left_eye.rotateAngleZ = 0.0F;
   left_eye.mirror = false;
 }
コード例 #10
0
ファイル: CubeInfo.java プロジェクト: Distjubo/iChunUtil
  public void createChildren(ModelBase base) {
    for (CubeInfo child : getChildren()) {
      child.modelCube = new ModelRenderer(base, child.txOffset[0], child.txOffset[1]);
      child.modelCube.mirror = child.txMirror;
      child.modelCube.addBox(
          (float) child.offset[0],
          (float) child.offset[1],
          (float) child.offset[2],
          child.dimensions[0],
          child.dimensions[1],
          child.dimensions[2]);
      child.modelCube.setRotationPoint(
          (float) child.position[0], (float) child.position[1], (float) child.position[2]);
      child.modelCube.rotateAngleX = (float) Math.toRadians(child.rotation[0]);
      child.modelCube.rotateAngleY = (float) Math.toRadians(child.rotation[1]);
      child.modelCube.rotateAngleZ = (float) Math.toRadians(child.rotation[2]);

      this.modelCube.addChild(child.modelCube);

      child.createChildren(base);
    }
  }
コード例 #11
0
ファイル: ModelDensos.java プロジェクト: KenBeanNet/Divine
 private void setRotation(ModelRenderer var1, float var2, float var3, float var4) {
   var1.rotateAngleX = var2;
   var1.rotateAngleY = var3;
   var1.rotateAngleZ = var4;
 }
コード例 #12
0
ファイル: efurnace.java プロジェクト: KodeKishin/ME-Craft
 private void setRotation(ModelRenderer model, float x, float y, float z) {
   model.rotateAngleX = x;
   model.rotateAngleY = y;
   model.rotateAngleZ = z;
 }
コード例 #13
0
 public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
   modelRenderer.rotateAngleX = x;
   modelRenderer.rotateAngleY = y;
   modelRenderer.rotateAngleZ = z;
 }
コード例 #14
0
 private void setStartingAngles(ModelRenderer model, float x, float y, float z) {
   model.rotateAngleX = x;
   model.rotateAngleY = y;
   model.rotateAngleZ = z;
 }
コード例 #15
0
  public ModelOverlordCore() {
    textureWidth = 128;
    textureHeight = 128;

    head = new ModelRenderer(this, 0, 50);
    head.addBox(-8F, -8F, -8F, 16, 6, 15);
    head.setRotationPoint(0F, 4F, 0F);

    ModelRenderer headTop = new ModelRenderer(this, 64, 50);
    headTop.addBox(-5F, -11F, -5F, 10, 3, 14);
    head.addChild(headTop);

    ModelRenderer headBottom = new ModelRenderer(this, 0, 72);
    headBottom.addBox(-6F, -2F, -7F, 12, 5, 8);
    head.addChild(headBottom);

    ModelRenderer gillRight = new ModelRenderer(this, 0, 0);
    gillRight.addBox(-7F, -2F, -1F, 1, 4, 1);
    head.addChild(gillRight);

    ModelRenderer gillRight2 = new ModelRenderer(this, 0, 0);
    gillRight2.addBox(-7F, -2F, -3F, 1, 3, 1);
    head.addChild(gillRight2);

    ModelRenderer gillRight3 = new ModelRenderer(this, 0, 0);
    gillRight3.addBox(-7F, -2F, -5F, 1, 2, 1);
    head.addChild(gillRight3);

    ModelRenderer gillLeft = new ModelRenderer(this, 0, 0);
    gillLeft.addBox(6F, -2F, -1F, 1, 4, 1);
    head.addChild(gillLeft);

    ModelRenderer gillLeft2 = new ModelRenderer(this, 0, 0);
    gillLeft2.addBox(6F, -2F, -3F, 1, 3, 1);
    head.addChild(gillLeft2);

    ModelRenderer gillLeft3 = new ModelRenderer(this, 0, 0);
    gillLeft3.addBox(6F, -2F, -5F, 1, 2, 1);
    head.addChild(gillLeft3);

    pincerLeft = new ModelRenderer(this, 80, 0);
    pincerLeft.addBox(-2F, -1F, -6F, 2, 4, 7);
    pincerLeft.setRotationPoint(-5F, 2F, -7F);
    head.addChild(pincerLeft);

    ModelRenderer pincerTipLeft = new ModelRenderer(this, 80, 12);
    pincerTipLeft.addBox(0F, 0F, -7F, 4, 3, 1);
    pincerLeft.addChild(pincerTipLeft);

    pincerRight = new ModelRenderer(this, 80, 0);
    pincerRight.addBox(0F, -1F, -7F, 2, 4, 7);
    pincerRight.setRotationPoint(5F, 2F, -6F);
    head.addChild(pincerRight);

    ModelRenderer pincerTipRight = new ModelRenderer(this, 80, 12);
    pincerTipRight.addBox(-4F, 0F, -8F, 4, 3, 1);
    pincerRight.addChild(pincerTipRight);

    lowerJaw = new ModelRenderer(this, 112, 72);
    lowerJaw.addBox(-2F, 3F, -7F, 4, 1, 3);
    head.addChild(lowerJaw);

    ModelRenderer eye = new ModelRenderer(this, 32, 90);
    eye.addBox(-2F, -2F, -9F, 4, 4, 2);
    head.addChild(eye);

    ModelRenderer eyeSocketLeft = new ModelRenderer(this, 46, 90);
    eyeSocketLeft.addBox(2F, -1F, -8F, 3, 1, 1);
    head.addChild(eyeSocketLeft);

    ModelRenderer eyeSocketRight = new ModelRenderer(this, 46, 90);
    eyeSocketRight.addBox(-5F, -1F, -8F, 3, 1, 1);
    head.addChild(eyeSocketRight);

    ModelRenderer eye2 = new ModelRenderer(this, 32, 98);
    eye2.addBox(1F, -6F, -9F, 3, 3, 1);
    head.addChild(eye2);

    ModelRenderer eye3 = new ModelRenderer(this, 32, 98);
    eye3.addBox(-5F, -5F, -9F, 3, 3, 1);
    head.addChild(eye3);

    ModelRenderer eye4 = new ModelRenderer(this, 32, 98);
    eye4.addBox(5F, -7F, -9F, 2, 2, 1);
    head.addChild(eye4);

    ModelRenderer eye5 = new ModelRenderer(this, 32, 98);
    eye5.addBox(-7F, -6F, -9F, 1, 1, 1);
    head.addChild(eye5);

    ModelRenderer eye6 = new ModelRenderer(this, 32, 98);
    eye6.addBox(-9F, -7F, 0F, 1, 2, 2);
    head.addChild(eye6);

    ModelRenderer eye7 = new ModelRenderer(this, 32, 98);
    eye7.addBox(-1F, -7F, -9F, 1, 1, 1);
    head.addChild(eye7);

    ModelRenderer eye8 = new ModelRenderer(this, 32, 98);
    eye8.addBox(8F, -7F, 0F, 1, 3, 3);
    head.addChild(eye8);

    ModelRenderer eye9 = new ModelRenderer(this, 32, 98);
    eye9.addBox(8F, -4F, -5F, 1, 1, 1);
    head.addChild(eye9);

    ModelRenderer eye10 = new ModelRenderer(this, 32, 98);
    eye10.addBox(-9F, -4F, -3F, 1, 1, 1);
    head.addChild(eye10);

    ModelRenderer eye11 = new ModelRenderer(this, 32, 98);
    eye11.addBox(-9F, -6F, -6F, 1, 2, 2);
    head.addChild(eye11);

    neck = new ModelRenderer(this, 50, 72);
    neck.addBox(-3F, -4F, 1F, 6, 6, 9);
    neck.setRotationPoint(0F, 4F, 0F);

    ModelRenderer abdomen = new ModelRenderer(this, 0, 18);
    abdomen.addBox(-2F, 2F, 5F, 3, 3, 4);
    neck.addChild(abdomen);

    brain = new ModelRenderer(this, 0, 90);
    brain.addBox(-6F, -5F, 0F, 6, 6, 6);
    brain.setRotationPoint(0F, 0F, 11F);

    ModelRenderer brain2 = new ModelRenderer(this, 0, 90);
    brain2.addBox(-1F, -4F, -1F, 6, 6, 6);
    brain.addChild(brain2);

    ModelRenderer brain3 = new ModelRenderer(this, 0, 90);
    brain3.addBox(1F, -5F, 15F, 6, 6, 6);
    brain.addChild(brain3);

    ModelRenderer brain4 = new ModelRenderer(this, 0, 90);
    brain4.addBox(4F, -5F, 18F, 6, 6, 6);
    brain.addChild(brain4);

    ModelRenderer brain5 = new ModelRenderer(this, 0, 90);
    brain5.addBox(0F, -6F, 10F, 6, 6, 6);
    brain.addChild(brain5);

    ModelRenderer brain6 = new ModelRenderer(this, 0, 90);
    brain6.addBox(0F, 0F, 3F, 6, 6, 6);
    brain.addChild(brain6);

    ModelRenderer brain7 = new ModelRenderer(this, 0, 90);
    brain7.addBox(-4F, -7F, 3F, 6, 6, 6);
    brain.addChild(brain7);

    ModelRenderer brain8 = new ModelRenderer(this, 0, 90);
    brain8.addBox(-3F, -1F, 6F, 6, 6, 6);
    brain.addChild(brain8);

    ModelRenderer brain9 = new ModelRenderer(this, 0, 90);
    brain9.addBox(0F, 1F, 9F, 6, 6, 6);
    brain.addChild(brain9);

    ModelRenderer brain10 = new ModelRenderer(this, 0, 90);
    brain10.addBox(-1F, 2F, 0F, 6, 6, 6);
    brain.addChild(brain10);

    ModelRenderer brain11 = new ModelRenderer(this, 0, 90);
    brain11.addBox(-5F, 0F, 13F, 6, 6, 6);
    brain.addChild(brain11);

    ModelRenderer brain12 = new ModelRenderer(this, 0, 90);
    brain12.addBox(-5F, 0F, 1F, 6, 6, 6);
    brain.addChild(brain12);

    brainSac = new ModelRenderer(this, 2, 0);
    brainSac.addBox(-12F, -14F, 10F, 24, 18, 28);
    brainSac.setRotationPoint(0F, 4F, 0F);

    ModelRenderer brainVein = new ModelRenderer(this, 0, 0);
    brainVein.addBox(-9F, -2F, 9F, 1, 7, 1);
    brainSac.addChild(brainVein);

    ModelRenderer brainVein2 = new ModelRenderer(this, 0, 0);
    brainVein2.addBox(-10F, -12F, 9F, 1, 11, 1);
    brainSac.addChild(brainVein2);

    ModelRenderer brainVein3 = new ModelRenderer(this, 0, 0);
    brainVein3.addBox(-9F, -12F, 9F, 10, 1, 1);
    brainSac.addChild(brainVein3);

    ModelRenderer brainVein4 = new ModelRenderer(this, 0, 0);
    brainVein4.addBox(-4F, -15F, 9F, 1, 3, 1);
    brainSac.addChild(brainVein4);

    ModelRenderer brainVein5 = new ModelRenderer(this, 0, 0);
    brainVein5.addBox(-8F, -15F, 9F, 1, 3, 1);
    brainSac.addChild(brainVein5);

    ModelRenderer brainVein6 = new ModelRenderer(this, 0, 0);
    brainVein6.addBox(-13F, 0F, 9F, 4, 1, 1);
    brainSac.addChild(brainVein6);

    ModelRenderer brainVein7 = new ModelRenderer(this, 0, 0);
    brainVein7.addBox(1F, -13F, 9F, 1, 9, 1);
    brainSac.addChild(brainVein7);

    ModelRenderer brainVein8 = new ModelRenderer(this, 0, 0);
    brainVein8.addBox(2F, -5F, 9F, 11, 1, 1);
    brainSac.addChild(brainVein8);

    ModelRenderer brainVein9 = new ModelRenderer(this, 0, 0);
    brainVein9.addBox(6F, -10F, 9F, 1, 5, 1);
    brainSac.addChild(brainVein9);

    ModelRenderer brainVein10 = new ModelRenderer(this, 0, 0);
    brainVein10.addBox(7F, -15F, 9F, 1, 6, 1);
    brainSac.addChild(brainVein10);

    ModelRenderer brainVein11 = new ModelRenderer(this, 0, 0);
    brainVein11.addBox(2F, -13F, 9F, 5, 1, 1);
    brainSac.addChild(brainVein11);

    ModelRenderer brainVein12 = new ModelRenderer(this, 0, 0);
    brainVein12.addBox(7F, -15F, 10F, 1, 1, 8);
    brainSac.addChild(brainVein12);

    ModelRenderer brainVein13 = new ModelRenderer(this, 0, 0);
    brainVein13.addBox(-10F, -15F, 10F, 7, 1, 1);
    brainSac.addChild(brainVein13);

    ModelRenderer brainVein14 = new ModelRenderer(this, 0, 0);
    brainVein14.addBox(-10F, -15F, 11F, 1, 1, 12);
    brainSac.addChild(brainVein14);

    ModelRenderer brainVein15 = new ModelRenderer(this, 0, 0);
    brainVein15.addBox(-5F, -15F, 11F, 1, 1, 6);
    brainSac.addChild(brainVein15);

    ModelRenderer brainVein16 = new ModelRenderer(this, 0, 0);
    brainVein16.addBox(-6F, -15F, 16F, 1, 1, 10);
    brainSac.addChild(brainVein16);

    ModelRenderer brainVein17 = new ModelRenderer(this, 0, 0);
    brainVein17.addBox(-12F, -5F, 9F, 2, 1, 1);
    brainSac.addChild(brainVein17);

    ModelRenderer brainVein18 = new ModelRenderer(this, 0, 0);
    brainVein18.addBox(2F, -15F, 13F, 5, 1, 1);
    brainSac.addChild(brainVein18);

    ModelRenderer brainVein19 = new ModelRenderer(this, 0, 0);
    brainVein19.addBox(1F, -15F, 13F, 1, 1, 9);
    brainSac.addChild(brainVein19);

    ModelRenderer brainVein20 = new ModelRenderer(this, 0, 0);
    brainVein20.addBox(-1F, -15F, 14F, 1, 1, 13);
    brainSac.addChild(brainVein20);

    ModelRenderer brainVein21 = new ModelRenderer(this, 0, 0);
    brainVein21.addBox(0F, -15F, 14F, 1, 1, 1);
    brainSac.addChild(brainVein21);

    ModelRenderer brainVein22 = new ModelRenderer(this, 0, 0);
    brainVein22.addBox(-9F, -15F, 22F, 3, 1, 1);
    brainSac.addChild(brainVein22);

    ModelRenderer brainVein23 = new ModelRenderer(this, 0, 0);
    brainVein23.addBox(2F, -15F, 20F, 8, 1, 1);
    brainSac.addChild(brainVein23);

    ModelRenderer brainVein24 = new ModelRenderer(this, 0, 0);
    brainVein24.addBox(8F, -15F, 17F, 3, 1, 1);
    brainSac.addChild(brainVein24);

    ModelRenderer brainVein25 = new ModelRenderer(this, 0, 0);
    brainVein25.addBox(10F, -15F, 18F, 1, 1, 10);
    brainSac.addChild(brainVein25);

    ModelRenderer brainVein26 = new ModelRenderer(this, 0, 0);
    brainVein26.addBox(0F, -15F, 21F, 1, 1, 1);
    brainSac.addChild(brainVein26);

    ModelRenderer brainVein27 = new ModelRenderer(this, 0, 0);
    brainVein27.addBox(-5F, -15F, 25F, 1, 1, 9);
    brainSac.addChild(brainVein27);

    ModelRenderer brainVein28 = new ModelRenderer(this, 0, 0);
    brainVein28.addBox(0F, -15F, 26F, 1, 1, 8);
    brainSac.addChild(brainVein28);

    ModelRenderer brainVein29 = new ModelRenderer(this, 0, 0);
    brainVein29.addBox(-5F, -15F, 19F, 4, 1, 1);
    brainSac.addChild(brainVein29);

    ModelRenderer brainVein30 = new ModelRenderer(this, 0, 0);
    brainVein30.addBox(4F, -15F, 21F, 1, 1, 12);
    brainSac.addChild(brainVein30);

    ModelRenderer brainVein31 = new ModelRenderer(this, 0, 0);
    brainVein31.addBox(-13F, -15F, 14F, 3, 1, 1);
    brainSac.addChild(brainVein31);

    ModelRenderer brainVein32 = new ModelRenderer(this, 0, 0);
    brainVein32.addBox(-13F, -5F, 9F, 1, 1, 12);
    brainSac.addChild(brainVein32);

    ModelRenderer brainVein33 = new ModelRenderer(this, 0, 0);
    brainVein33.addBox(-13F, -4F, 14F, 1, 3, 1);
    brainSac.addChild(brainVein33);

    ModelRenderer brainVein34 = new ModelRenderer(this, 0, 0);
    brainVein34.addBox(-13F, -15F, 15F, 1, 5, 1);
    brainSac.addChild(brainVein34);

    ModelRenderer brainVein35 = new ModelRenderer(this, 0, 0);
    brainVein35.addBox(-13F, -11F, 16F, 1, 6, 1);
    brainSac.addChild(brainVein35);

    ModelRenderer brainVein36 = new ModelRenderer(this, 0, 0);
    brainVein36.addBox(-13F, -4F, 20F, 1, 1, 10);
    brainSac.addChild(brainVein36);

    ModelRenderer brainVein37 = new ModelRenderer(this, 0, 0);
    brainVein37.addBox(-13F, -1F, 9F, 1, 1, 6);
    brainSac.addChild(brainVein37);

    ModelRenderer brainVein38 = new ModelRenderer(this, 0, 0);
    brainVein38.addBox(-13F, -8F, 20F, 1, 1, 8);
    brainSac.addChild(brainVein38);

    ModelRenderer brainVein39 = new ModelRenderer(this, 0, 0);
    brainVein39.addBox(-13F, -7F, 20F, 1, 2, 1);
    brainSac.addChild(brainVein39);

    ModelRenderer brainVein40 = new ModelRenderer(this, 0, 0);
    brainVein40.addBox(-13F, -2F, 15F, 1, 1, 10);
    brainSac.addChild(brainVein40);

    ModelRenderer brainVein41 = new ModelRenderer(this, 0, 0);
    brainVein41.addBox(-13F, -1F, 24F, 1, 1, 7);
    brainSac.addChild(brainVein41);

    ModelRenderer brainVein42 = new ModelRenderer(this, 0, 0);
    brainVein42.addBox(-13F, -4F, 30F, 1, 3, 1);
    brainSac.addChild(brainVein42);

    ModelRenderer brainVein43 = new ModelRenderer(this, 0, 0);
    brainVein43.addBox(-13F, -7F, 27F, 1, 1, 8);
    brainSac.addChild(brainVein43);

    ModelRenderer brainVein44 = new ModelRenderer(this, 0, 0);
    brainVein44.addBox(-13F, -11F, 26F, 1, 3, 1);
    brainSac.addChild(brainVein44);

    ModelRenderer brainVein45 = new ModelRenderer(this, 0, 0);
    brainVein45.addBox(-13F, -11F, 27F, 1, 1, 12);
    brainSac.addChild(brainVein45);

    ModelRenderer brainVein46 = new ModelRenderer(this, 0, 0);
    brainVein46.addBox(-13F, -15F, 32F, 1, 4, 1);
    brainSac.addChild(brainVein46);

    ModelRenderer brainVein47 = new ModelRenderer(this, 0, 0);
    brainVein47.addBox(-13F, -10F, 34F, 1, 3, 1);
    brainSac.addChild(brainVein47);

    ModelRenderer brainVein48 = new ModelRenderer(this, 0, 0);
    brainVein48.addBox(-13F, -3F, 31F, 1, 1, 8);
    brainSac.addChild(brainVein48);

    ModelRenderer brainVein49 = new ModelRenderer(this, 0, 0);
    brainVein49.addBox(-13F, -1F, 18F, 1, 3, 1);
    brainSac.addChild(brainVein49);

    ModelRenderer brainVein50 = new ModelRenderer(this, 0, 0);
    brainVein50.addBox(-13F, 1F, 19F, 1, 1, 9);
    brainSac.addChild(brainVein50);

    ModelRenderer brainVein51 = new ModelRenderer(this, 0, 0);
    brainVein51.addBox(-13F, 0F, 27F, 1, 1, 1);
    brainSac.addChild(brainVein51);

    ModelRenderer brainVein52 = new ModelRenderer(this, 0, 0);
    brainVein52.addBox(-13F, -13F, 16F, 1, 1, 13);
    brainSac.addChild(brainVein52);

    ModelRenderer brainVein53 = new ModelRenderer(this, 0, 0);
    brainVein53.addBox(-13F, -15F, 28F, 1, 2, 1);
    brainSac.addChild(brainVein53);

    ModelRenderer brainVein54 = new ModelRenderer(this, 0, 0);
    brainVein54.addBox(-12F, -15F, 28F, 1, 1, 5);
    brainSac.addChild(brainVein54);

    ModelRenderer brainVein55 = new ModelRenderer(this, 0, 0);
    brainVein55.addBox(-11F, -15F, 30F, 6, 1, 1);
    brainSac.addChild(brainVein55);

    ModelRenderer brainVein56 = new ModelRenderer(this, 0, 0);
    brainVein56.addBox(1F, -15F, 33F, 6, 1, 1);
    brainSac.addChild(brainVein56);

    ModelRenderer brainVein57 = new ModelRenderer(this, 0, 0);
    brainVein57.addBox(7F, -15F, 21F, 1, 1, 8);
    brainSac.addChild(brainVein57);

    ModelRenderer brainVein58 = new ModelRenderer(this, 0, 0);
    brainVein58.addBox(9F, -15F, 27F, 1, 1, 11);
    brainSac.addChild(brainVein58);

    ModelRenderer brainVein59 = new ModelRenderer(this, 0, 0);
    brainVein59.addBox(8F, -15F, 28F, 1, 1, 1);
    brainSac.addChild(brainVein59);

    ModelRenderer brainVein60 = new ModelRenderer(this, 0, 0);
    brainVein60.addBox(6F, -15F, 34F, 1, 1, 5);
    brainSac.addChild(brainVein60);

    ModelRenderer brainVein61 = new ModelRenderer(this, 0, 0);
    brainVein61.addBox(7F, -15F, 38F, 3, 1, 1);
    brainSac.addChild(brainVein61);

    ModelRenderer brainVein62 = new ModelRenderer(this, 0, 0);
    brainVein62.addBox(-1F, -15F, 33F, 1, 1, 6);
    brainSac.addChild(brainVein62);

    ModelRenderer brainVein63 = new ModelRenderer(this, 0, 0);
    brainVein63.addBox(-4F, -15F, 33F, 1, 1, 6);
    brainSac.addChild(brainVein63);

    ModelRenderer brainVein64 = new ModelRenderer(this, 0, 0);
    brainVein64.addBox(-9F, -15F, 31F, 1, 1, 8);
    brainSac.addChild(brainVein64);

    ModelRenderer brainVein65 = new ModelRenderer(this, 0, 0);
    brainVein65.addBox(12F, -4F, 9F, 1, 1, 10);
    brainSac.addChild(brainVein65);

    ModelRenderer brainVein66 = new ModelRenderer(this, 0, 0);
    brainVein66.addBox(12F, -1F, 9F, 1, 1, 6);
    brainSac.addChild(brainVein66);

    ModelRenderer brainVein67 = new ModelRenderer(this, 0, 0);
    brainVein67.addBox(3F, 0F, 9F, 10, 1, 1);
    brainSac.addChild(brainVein67);

    ModelRenderer brainVein68 = new ModelRenderer(this, 0, 0);
    brainVein68.addBox(12F, -4F, 19F, 1, 6, 1);
    brainSac.addChild(brainVein68);

    ModelRenderer brainVein69 = new ModelRenderer(this, 0, 0);
    brainVein69.addBox(12F, -8F, 14F, 1, 1, 7);
    brainSac.addChild(brainVein69);

    ModelRenderer brainVein70 = new ModelRenderer(this, 0, 0);
    brainVein70.addBox(12F, -11F, 13F, 1, 4, 1);
    brainSac.addChild(brainVein70);

    ModelRenderer brainVein71 = new ModelRenderer(this, 0, 0);
    brainVein71.addBox(12F, -12F, 13F, 1, 1, 6);
    brainSac.addChild(brainVein71);

    ModelRenderer brainVein72 = new ModelRenderer(this, 0, 0);
    brainVein72.addBox(12F, -11F, 18F, 1, 1, 6);
    brainSac.addChild(brainVein72);

    ModelRenderer brainVein73 = new ModelRenderer(this, 0, 0);
    brainVein73.addBox(12F, -15F, 24F, 1, 5, 1);
    brainSac.addChild(brainVein73);

    ModelRenderer brainVein74 = new ModelRenderer(this, 0, 0);
    brainVein74.addBox(11F, -15F, 24F, 1, 1, 1);
    brainSac.addChild(brainVein74);

    ModelRenderer brainVein75 = new ModelRenderer(this, 0, 0);
    brainVein75.addBox(12F, -3F, 17F, 1, 4, 1);
    brainSac.addChild(brainVein75);

    ModelRenderer brainVein76 = new ModelRenderer(this, 0, 0);
    brainVein76.addBox(12F, 1F, 20F, 1, 1, 8);
    brainSac.addChild(brainVein76);

    ModelRenderer brainVein77 = new ModelRenderer(this, 0, 0);
    brainVein77.addBox(12F, 0F, 27F, 1, 1, 12);
    brainSac.addChild(brainVein77);

    ModelRenderer brainVein78 = new ModelRenderer(this, 0, 0);
    brainVein78.addBox(12F, -6F, 20F, 1, 1, 7);
    brainSac.addChild(brainVein78);

    ModelRenderer brainVein79 = new ModelRenderer(this, 0, 0);
    brainVein79.addBox(12F, -3F, 22F, 1, 1, 8);
    brainSac.addChild(brainVein79);

    ModelRenderer brainVein80 = new ModelRenderer(this, 0, 0);
    brainVein80.addBox(12F, -10F, 9F, 1, 1, 4);
    brainSac.addChild(brainVein80);

    ModelRenderer brainVein81 = new ModelRenderer(this, 0, 0);
    brainVein81.addBox(11F, -10F, 9F, 1, 5, 1);
    brainSac.addChild(brainVein81);

    ModelRenderer brainVein82 = new ModelRenderer(this, 0, 0);
    brainVein82.addBox(5F, 1F, 9F, 1, 4, 1);
    brainSac.addChild(brainVein82);

    ModelRenderer brainVein83 = new ModelRenderer(this, 0, 0);
    brainVein83.addBox(12F, -2F, 29F, 1, 1, 3);
    brainSac.addChild(brainVein83);

    ModelRenderer brainVein84 = new ModelRenderer(this, 0, 0);
    brainVein84.addBox(12F, -1F, 31F, 1, 1, 1);
    brainSac.addChild(brainVein84);

    ModelRenderer brainVein85 = new ModelRenderer(this, 0, 0);
    brainVein85.addBox(12F, -7F, 26F, 1, 1, 10);
    brainSac.addChild(brainVein85);

    ModelRenderer brainVein86 = new ModelRenderer(this, 0, 0);
    brainVein86.addBox(12F, -12F, 25F, 1, 1, 12);
    brainSac.addChild(brainVein86);

    ModelRenderer brainVein87 = new ModelRenderer(this, 0, 0);
    brainVein87.addBox(12F, -11F, 33F, 1, 4, 1);
    brainSac.addChild(brainVein87);

    ModelRenderer brainVein88 = new ModelRenderer(this, 0, 0);
    brainVein88.addBox(12F, -6F, 35F, 1, 3, 1);
    brainSac.addChild(brainVein88);

    ModelRenderer brainVein89 = new ModelRenderer(this, 0, 0);
    brainVein89.addBox(12F, -4F, 36F, 1, 1, 3);
    brainSac.addChild(brainVein89);

    ModelRenderer brainVein90 = new ModelRenderer(this, 0, 0);
    brainVein90.addBox(12F, -13F, 36F, 1, 1, 3);
    brainSac.addChild(brainVein90);

    ModelRenderer brainVein91 = new ModelRenderer(this, 0, 0);
    brainVein91.addBox(12F, -11F, 36F, 1, 1, 3);
    brainSac.addChild(brainVein91);

    ModelRenderer brainVein92 = new ModelRenderer(this, 0, 0);
    brainVein92.addBox(12F, -2F, 20F, 1, 1, 3);
    brainSac.addChild(brainVein92);

    ModelRenderer brainVein93 = new ModelRenderer(this, 0, 0);
    brainVein93.addBox(12F, -7F, 20F, 1, 1, 1);
    brainSac.addChild(brainVein93);

    ModelRenderer brainVein94 = new ModelRenderer(this, 0, 0);
    brainVein94.addBox(12F, -9F, 20F, 1, 1, 13);
    brainSac.addChild(brainVein94);

    ModelRenderer brainVein95 = new ModelRenderer(this, 0, 0);
    brainVein95.addBox(12F, 0F, 14F, 1, 1, 1);
    brainSac.addChild(brainVein95);

    ModelRenderer brainVein96 = new ModelRenderer(this, 0, 0);
    brainVein96.addBox(12F, 1F, 14F, 1, 1, 4);
    brainSac.addChild(brainVein96);

    ModelRenderer brainVein97 = new ModelRenderer(this, 0, 0);
    brainVein97.addBox(7F, -4F, 9F, 1, 4, 1);
    brainSac.addChild(brainVein97);

    ModelRenderer brainVein98 = new ModelRenderer(this, 0, 0);
    brainVein98.addBox(0F, -15F, 38F, 1, 6, 1);
    brainSac.addChild(brainVein98);

    ModelRenderer brainVein99 = new ModelRenderer(this, 0, 0);
    brainVein99.addBox(-6F, -10F, 38F, 6, 1, 1);
    brainSac.addChild(brainVein99);

    ModelRenderer brainVein100 = new ModelRenderer(this, 0, 0);
    brainVein100.addBox(-5F, -15F, 38F, 1, 5, 1);
    brainSac.addChild(brainVein100);

    ModelRenderer brainVein101 = new ModelRenderer(this, 0, 0);
    brainVein101.addBox(-6F, -9F, 38F, 1, 5, 1);
    brainSac.addChild(brainVein101);

    ModelRenderer brainVein102 = new ModelRenderer(this, 0, 0);
    brainVein102.addBox(-9F, -14F, 38F, 2, 1, 1);
    brainSac.addChild(brainVein102);

    ModelRenderer brainVein103 = new ModelRenderer(this, 0, 0);
    brainVein103.addBox(-8F, -13F, 38F, 1, 4, 1);
    brainSac.addChild(brainVein103);

    ModelRenderer brainVein104 = new ModelRenderer(this, 0, 0);
    brainVein104.addBox(-13F, -10F, 38F, 5, 1, 1);
    brainSac.addChild(brainVein104);

    ModelRenderer brainVein105 = new ModelRenderer(this, 0, 0);
    brainVein105.addBox(-10F, -9F, 38F, 1, 12, 1);
    brainSac.addChild(brainVein105);

    ModelRenderer brainVein106 = new ModelRenderer(this, 0, 0);
    brainVein106.addBox(-5F, -5F, 38F, 1, 5, 1);
    brainSac.addChild(brainVein106);

    ModelRenderer brainVein107 = new ModelRenderer(this, 0, 0);
    brainVein107.addBox(-9F, 0F, 38F, 5, 1, 1);
    brainSac.addChild(brainVein107);

    ModelRenderer brainVein108 = new ModelRenderer(this, 0, 0);
    brainVein108.addBox(-9F, 2F, 38F, 1, 3, 1);
    brainSac.addChild(brainVein108);

    ModelRenderer brainVein109 = new ModelRenderer(this, 0, 0);
    brainVein109.addBox(-13F, -4F, 38F, 3, 1, 1);
    brainSac.addChild(brainVein109);

    ModelRenderer brainVein110 = new ModelRenderer(this, 0, 0);
    brainVein110.addBox(9F, -12F, 38F, 4, 1, 1);
    brainSac.addChild(brainVein110);

    ModelRenderer brainVein111 = new ModelRenderer(this, 0, 0);
    brainVein111.addBox(8F, -14F, 38F, 1, 3, 1);
    brainSac.addChild(brainVein111);

    ModelRenderer brainVein112 = new ModelRenderer(this, 0, 0);
    brainVein112.addBox(-2F, -9F, 38F, 1, 7, 1);
    brainSac.addChild(brainVein112);

    ModelRenderer brainVein113 = new ModelRenderer(this, 0, 0);
    brainVein113.addBox(-4F, -3F, 38F, 2, 1, 1);
    brainSac.addChild(brainVein113);

    ModelRenderer brainVein114 = new ModelRenderer(this, 0, 0);
    brainVein114.addBox(-1F, -3F, 38F, 1, 8, 1);
    brainSac.addChild(brainVein114);

    ModelRenderer brainVein115 = new ModelRenderer(this, 0, 0);
    brainVein115.addBox(0F, -1F, 38F, 7, 1, 1);
    brainSac.addChild(brainVein115);

    ModelRenderer brainVein116 = new ModelRenderer(this, 0, 0);
    brainVein116.addBox(6F, 0F, 38F, 6, 1, 1);
    brainSac.addChild(brainVein116);

    ModelRenderer brainVein117 = new ModelRenderer(this, 0, 0);
    brainVein117.addBox(8F, -3F, 38F, 5, 1, 1);
    brainSac.addChild(brainVein117);

    ModelRenderer brainVein118 = new ModelRenderer(this, 0, 0);
    brainVein118.addBox(6F, -2F, 38F, 3, 1, 1);
    brainSac.addChild(brainVein118);

    ModelRenderer brainVein119 = new ModelRenderer(this, 0, 0);
    brainVein119.addBox(1F, -11F, 38F, 4, 1, 1);
    brainSac.addChild(brainVein119);

    ModelRenderer brainVein120 = new ModelRenderer(this, 0, 0);
    brainVein120.addBox(10F, -11F, 38F, 1, 6, 1);
    brainSac.addChild(brainVein120);

    ModelRenderer brainVein121 = new ModelRenderer(this, 0, 0);
    brainVein121.addBox(5F, -11F, 38F, 1, 5, 1);
    brainSac.addChild(brainVein121);

    ModelRenderer brainVein122 = new ModelRenderer(this, 0, 0);
    brainVein122.addBox(5F, -6F, 38F, 5, 1, 1);
    brainSac.addChild(brainVein122);

    ModelRenderer brainVein123 = new ModelRenderer(this, 0, 0);
    brainVein123.addBox(9F, -5F, 38F, 1, 2, 1);
    brainSac.addChild(brainVein123);

    ModelRenderer brainVein124 = new ModelRenderer(this, 0, 0);
    brainVein124.addBox(-1F, -7F, 38F, 6, 1, 1);
    brainSac.addChild(brainVein124);

    ModelRenderer brainVein125 = new ModelRenderer(this, 0, 0);
    brainVein125.addBox(0F, 4F, 10F, 6, 1, 1);
    brainSac.addChild(brainVein125);

    ModelRenderer brainVein126 = new ModelRenderer(this, 0, 0);
    brainVein126.addBox(-9F, 4F, 10F, 1, 1, 7);
    brainSac.addChild(brainVein126);

    ModelRenderer brainVein127 = new ModelRenderer(this, 0, 0);
    brainVein127.addBox(0F, 4F, 11F, 1, 1, 8);
    brainSac.addChild(brainVein127);

    ModelRenderer brainVein128 = new ModelRenderer(this, 0, 0);
    brainVein128.addBox(1F, 4F, 18F, 2, 1, 1);
    brainSac.addChild(brainVein128);

    ModelRenderer brainVein129 = new ModelRenderer(this, 0, 0);
    brainVein129.addBox(3F, 4F, 18F, 1, 1, 6);
    brainSac.addChild(brainVein129);

    ModelRenderer brainVein130 = new ModelRenderer(this, 0, 0);
    brainVein130.addBox(3F, 4F, 24F, 10, 1, 1);
    brainSac.addChild(brainVein130);

    ModelRenderer brainVein131 = new ModelRenderer(this, 0, 0);
    brainVein131.addBox(7F, 4F, 25F, 1, 1, 8);
    brainSac.addChild(brainVein131);

    ModelRenderer brainVein132 = new ModelRenderer(this, 0, 0);
    brainVein132.addBox(12F, 2F, 24F, 1, 2, 1);
    brainSac.addChild(brainVein132);

    ModelRenderer brainVein133 = new ModelRenderer(this, 0, 0);
    brainVein133.addBox(5F, 4F, 13F, 8, 1, 1);
    brainSac.addChild(brainVein133);

    ModelRenderer brainVein134 = new ModelRenderer(this, 0, 0);
    brainVein134.addBox(12F, 1F, 13F, 1, 3, 1);
    brainSac.addChild(brainVein134);

    ModelRenderer brainVein135 = new ModelRenderer(this, 0, 0);
    brainVein135.addBox(0F, 4F, 30F, 1, 1, 9);
    brainSac.addChild(brainVein135);

    ModelRenderer brainVein136 = new ModelRenderer(this, 0, 0);
    brainVein136.addBox(-1F, 4F, 25F, 1, 1, 6);
    brainSac.addChild(brainVein136);

    ModelRenderer brainVein137 = new ModelRenderer(this, 0, 0);
    brainVein137.addBox(0F, 4F, 25F, 4, 1, 1);
    brainSac.addChild(brainVein137);

    ModelRenderer brainVein138 = new ModelRenderer(this, 0, 0);
    brainVein138.addBox(6F, 4F, 32F, 1, 1, 5);
    brainSac.addChild(brainVein138);

    ModelRenderer brainVein139 = new ModelRenderer(this, 0, 0);
    brainVein139.addBox(7F, 4F, 38F, 4, 1, 1);
    brainSac.addChild(brainVein139);

    ModelRenderer brainVein140 = new ModelRenderer(this, 0, 0);
    brainVein140.addBox(11F, 1F, 38F, 1, 4, 1);
    brainSac.addChild(brainVein140);

    ModelRenderer brainVein141 = new ModelRenderer(this, 0, 0);
    brainVein141.addBox(6F, 4F, 37F, 2, 1, 1);
    brainSac.addChild(brainVein141);

    ModelRenderer brainVein142 = new ModelRenderer(this, 0, 0);
    brainVein142.addBox(-2F, 4F, 28F, 1, 1, 1);
    brainSac.addChild(brainVein142);

    ModelRenderer brainVein143 = new ModelRenderer(this, 0, 0);
    brainVein143.addBox(-3F, 4F, 28F, 1, 1, 8);
    brainSac.addChild(brainVein143);

    ModelRenderer brainVein144 = new ModelRenderer(this, 0, 0);
    brainVein144.addBox(-9F, 4F, 35F, 6, 1, 1);
    brainSac.addChild(brainVein144);

    ModelRenderer brainVein145 = new ModelRenderer(this, 0, 0);
    brainVein145.addBox(-10F, 4F, 35F, 1, 1, 4);
    brainSac.addChild(brainVein145);

    ModelRenderer brainVein146 = new ModelRenderer(this, 0, 0);
    brainVein146.addBox(4F, 4F, 20F, 6, 1, 1);
    brainSac.addChild(brainVein146);

    ModelRenderer brainVein147 = new ModelRenderer(this, 0, 0);
    brainVein147.addBox(9F, 4F, 19F, 4, 1, 1);
    brainSac.addChild(brainVein147);

    ModelRenderer brainVein148 = new ModelRenderer(this, 0, 0);
    brainVein148.addBox(12F, 2F, 20F, 1, 3, 1);
    brainSac.addChild(brainVein148);

    ModelRenderer brainVein149 = new ModelRenderer(this, 0, 0);
    brainVein149.addBox(-8F, 4F, 15F, 5, 1, 1);
    brainSac.addChild(brainVein149);

    ModelRenderer brainVein150 = new ModelRenderer(this, 0, 0);
    brainVein150.addBox(5F, 4F, 14F, 1, 1, 3);
    brainSac.addChild(brainVein150);

    ModelRenderer brainVein151 = new ModelRenderer(this, 0, 0);
    brainVein151.addBox(6F, 4F, 16F, 4, 1, 1);
    brainSac.addChild(brainVein151);

    ModelRenderer brainVein152 = new ModelRenderer(this, 0, 0);
    brainVein152.addBox(10F, 4F, 16F, 1, 1, 3);
    brainSac.addChild(brainVein152);

    ModelRenderer brainVein153 = new ModelRenderer(this, 0, 0);
    brainVein153.addBox(-4F, 4F, 14F, 4, 1, 1);
    brainSac.addChild(brainVein153);

    ModelRenderer brainVein154 = new ModelRenderer(this, 0, 0);
    brainVein154.addBox(-13F, 4F, 17F, 5, 1, 1);
    brainSac.addChild(brainVein154);

    ModelRenderer brainVein155 = new ModelRenderer(this, 0, 0);
    brainVein155.addBox(-13F, 1F, 17F, 1, 3, 1);
    brainSac.addChild(brainVein155);

    ModelRenderer brainVein156 = new ModelRenderer(this, 0, 0);
    brainVein156.addBox(-6F, 4F, 16F, 1, 1, 9);
    brainSac.addChild(brainVein156);

    ModelRenderer brainVein157 = new ModelRenderer(this, 0, 0);
    brainVein157.addBox(-5F, 4F, 24F, 1, 1, 7);
    brainSac.addChild(brainVein157);

    ModelRenderer brainVein158 = new ModelRenderer(this, 0, 0);
    brainVein158.addBox(-4F, 4F, 30F, 1, 1, 1);
    brainSac.addChild(brainVein158);

    ModelRenderer brainVein159 = new ModelRenderer(this, 0, 0);
    brainVein159.addBox(-8F, 4F, 22F, 2, 1, 1);
    brainSac.addChild(brainVein159);

    ModelRenderer brainVein160 = new ModelRenderer(this, 0, 0);
    brainVein160.addBox(-9F, 4F, 22F, 1, 1, 10);
    brainSac.addChild(brainVein160);

    ModelRenderer brainVein161 = new ModelRenderer(this, 0, 0);
    brainVein161.addBox(-13F, 4F, 31F, 4, 1, 1);
    brainSac.addChild(brainVein161);

    ModelRenderer brainVein162 = new ModelRenderer(this, 0, 0);
    brainVein162.addBox(-13F, 2F, 31F, 1, 1, 8);
    brainSac.addChild(brainVein162);

    ModelRenderer brainVein163 = new ModelRenderer(this, 0, 0);
    brainVein163.addBox(-13F, 3F, 31F, 1, 1, 1);
    brainSac.addChild(brainVein163);

    ModelRenderer brainVein164 = new ModelRenderer(this, 0, 0);
    brainVein164.addBox(-13F, 1F, 38F, 3, 1, 1);
    brainSac.addChild(brainVein164);

    body = new ModelRenderer(this, 84, 72);
    body.addBox(-4F, 1F, -3F, 8, 6, 8);
    body.setRotationPoint(0F, 4F, 0F);

    ModelRenderer knobFR = new ModelRenderer(this, 0, 0);
    knobFR.addBox(-6F, 7F, -3F, 2, 2, 2);
    body.addChild(knobFR);

    ModelRenderer knobFMR = new ModelRenderer(this, 0, 0);
    knobFMR.addBox(-6F, 7F, 1F, 2, 2, 2);
    body.addChild(knobFMR);

    ModelRenderer knobBMR = new ModelRenderer(this, 0, 0);
    knobBMR.addBox(-6F, 5F, 4F, 2, 2, 2);
    body.addChild(knobBMR);

    ModelRenderer knobBR = new ModelRenderer(this, 0, 0);
    knobBR.addBox(-5F, 2F, 5F, 2, 2, 2);
    body.addChild(knobBR);

    ModelRenderer knobFL = new ModelRenderer(this, 0, 0);
    knobFL.addBox(4F, 7F, -3F, 2, 2, 2);
    body.addChild(knobFL);

    ModelRenderer knobFML = new ModelRenderer(this, 0, 0);
    knobFML.addBox(4F, 7F, 1F, 2, 2, 2);
    body.addChild(knobFML);

    ModelRenderer knobBML = new ModelRenderer(this, 0, 0);
    knobBML.addBox(4F, 5F, 4F, 2, 2, 2);
    body.addChild(knobBML);

    ModelRenderer knobBL = new ModelRenderer(this, 0, 0);
    knobBL.addBox(-2F, 2F, 5F, 2, 2, 2);
    body.addChild(knobBL);

    upperLegFR = new ModelRenderer(this, 60, 90);
    upperLegFR.addBox(0F, -1F, -1F, 1, 3, 1);
    upperLegFR.setRotationPoint(-6F, 13F, -2F);
    upperLegFR.rotateAngleX = -0.4833219F;
    upperLegFR.rotateAngleZ = 0.4833219F;

    lowerLegFR = new ModelRenderer(this, 60, 90);
    lowerLegFR.addBox(0F, 2F, -1F, 1, 3, 1);
    lowerLegFR.rotateAngleX = -0.0371787F;
    upperLegFR.addChild(lowerLegFR);

    upperLegFL = new ModelRenderer(this, 60, 90);
    upperLegFL.addBox(-1F, -1F, -1F, 1, 3, 1);
    upperLegFL.setRotationPoint(6F, 13F, -2F);
    upperLegFL.rotateAngleX = -0.4833219F;
    upperLegFL.rotateAngleZ = -0.4833219F;

    lowerLegFL = new ModelRenderer(this, 60, 90);
    lowerLegFL.addBox(-1F, 2F, -1F, 1, 3, 1);
    lowerLegFL.rotateAngleX = -0.0371787F;
    upperLegFL.addChild(lowerLegFL);

    upperLegFMR = new ModelRenderer(this, 60, 90);
    upperLegFMR.addBox(0F, -1F, 0F, 1, 3, 1);
    upperLegFMR.setRotationPoint(-6F, 13F, 1F);
    upperLegFMR.rotateAngleX = -0.2602503F;
    upperLegFMR.rotateAngleZ = -0.2974289F;

    lowerLegFMR = new ModelRenderer(this, 60, 90);
    lowerLegFMR.addBox(0F, 2F, 0F, 1, 3, 1);
    upperLegFMR.addChild(lowerLegFMR);

    upperLegFML = new ModelRenderer(this, 60, 90);
    upperLegFML.addBox(-1F, -1F, 0F, 1, 3, 1);
    upperLegFML.setRotationPoint(6F, 13F, 1F);
    upperLegFML.rotateAngleX = -0.2602503F;
    upperLegFML.rotateAngleZ = -0.2974289F;

    lowerLegFML = new ModelRenderer(this, 60, 90);
    lowerLegFML.addBox(-1F, 2F, 0F, 1, 3, 1);
    upperLegFML.addChild(lowerLegFML);

    legBMR = new ModelRenderer(this, 60, 90);
    legBMR.addBox(0F, 0F, 0F, 1, 3, 1);
    legBMR.setRotationPoint(-6F, 10F, 5F);
    legBMR.rotateAngleX = -0.3346075F;
    legBMR.rotateAngleZ = 0.1487144F;

    legBML = new ModelRenderer(this, 60, 90);
    legBML.addBox(-1F, 0F, 0F, 1, 3, 1);
    legBML.setRotationPoint(6F, 10F, 5F);
    legBML.rotateAngleX = -0.3346075F;
    legBML.rotateAngleZ = -0.1487144F;

    legBR = new ModelRenderer(this, 60, 90);
    legBR.addBox(0F, 0F, 0F, 1, 3, 1);
    legBR.setRotationPoint(-5F, 7F, 6F);
    legBR.rotateAngleX = 0.4461433F;
    legBR.rotateAngleZ = 0.2230717F;

    legBL = new ModelRenderer(this, 60, 90);
    legBL.addBox(-1F, 0F, 0F, 1, 3, 1);
    legBL.setRotationPoint(5F, 7F, 6F);
    legBL.rotateAngleX = 0.4461433F;
    legBL.rotateAngleZ = -0.2230717F;
  }
コード例 #16
0
  @Override
  public void setRotationAngles(
      float f, float f1, float f2, float f3, float f4, float f5, Entity entity) {
    super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);

    if (entity instanceof EntityStatue) return;

    EntityOverlordCore core = (EntityOverlordCore) entity;
    brainSac.rotateAngleY = brain.rotateAngleY = (f3 / (180F / (float) Math.PI)) * 0.35F;
    brainSac.rotateAngleX = brain.rotateAngleX = (f4 / (180F / (float) Math.PI)) * 0.35F;
    brainSac.rotateAngleZ = 0F;
    head.rotateAngleX = 0F;
    brain.rotateAngleZ = 0F;

    upperLegFR.rotateAngleY =
        upperLegFL.rotateAngleY =
            upperLegFMR.rotateAngleY =
                upperLegFML.rotateAngleY =
                    legBMR.rotateAngleY =
                        legBML.rotateAngleY =
                            legBR.rotateAngleY =
                                legBL.rotateAngleY = (f3 / (180F / (float) Math.PI));
    upperLegFR.rotateAngleZ =
        upperLegFL.rotateAngleZ =
            upperLegFMR.rotateAngleZ =
                upperLegFML.rotateAngleZ =
                    legBMR.rotateAngleZ =
                        legBML.rotateAngleZ =
                            legBR.rotateAngleZ =
                                legBL.rotateAngleZ = (f4 / (180F / (float) Math.PI));

    if (core.getTransformationTicks() > 0) {
      upperLegFL.rotateAngleZ = this.simplifyAngle(core.ticksExisted, 10.0F) * 0.38F - 0.38F;
      upperLegFR.rotateAngleZ = this.simplifyAngle(core.ticksExisted - 7, 10.0F) * -0.38F + 0.38F;
      upperLegFML.rotateAngleZ = this.simplifyAngle(core.ticksExisted + 4, 10.0F) * 0.21F - 0.21F;
      upperLegFMR.rotateAngleZ = this.simplifyAngle(core.ticksExisted - 2, 10.0F) * -0.21F + 0.21F;
      legBML.rotateAngleZ = this.simplifyAngle(core.ticksExisted + 4, 6.0F) * 0.22F - 0.22F;
      legBMR.rotateAngleZ = this.simplifyAngle(core.ticksExisted + 2, 6.0F) * -0.22F + 0.22F;
      legBR.rotateAngleZ = this.simplifyAngle(core.ticksExisted, 6.0F) * -0.22F + 0.22F;
      legBL.rotateAngleZ = this.simplifyAngle(core.ticksExisted - 3, 6.0F) * 0.22F - 0.22F;

      head.rotateAngleX = -0.23F;

      if (core.getTransformationTicks() >= 20) {
        pincerLeft.rotateAngleY = 0.57F - this.simplifyAngle(core.ticksExisted, 3F) * 0.125F;
        pincerRight.rotateAngleY = -0.57F + this.simplifyAngle(core.ticksExisted, 3F) * 0.125F;

        lowerJaw.rotateAngleX = 0.35F + this.simplifyAngle(core.ticksExisted, 5F) * 0.0125F;
      } else {
        pincerRight.rotateAngleY = -0.47F;
        pincerLeft.rotateAngleY = 0.47F;
        lowerJaw.rotateAngleX = -0.13F;
      }
      return;
    }

    if (core.getHoverTicks() > 0) {
      upperLegFL.rotateAngleZ = this.simplifyAngle(core.getHoverTicks(), 10.0F) * 0.38F - 0.38F;
      upperLegFR.rotateAngleZ =
          this.simplifyAngle(core.getHoverTicks() - 7, 10.0F) * -0.38F + 0.38F;
      upperLegFML.rotateAngleZ =
          this.simplifyAngle(core.getHoverTicks() + 4, 10.0F) * 0.21F - 0.21F;
      upperLegFMR.rotateAngleZ =
          this.simplifyAngle(core.getHoverTicks() - 2, 10.0F) * -0.21F + 0.21F;
      legBML.rotateAngleZ = this.simplifyAngle(core.getHoverTicks() + 4, 6.0F) * 0.22F - 0.22F;
      legBMR.rotateAngleZ = this.simplifyAngle(core.getHoverTicks() + 2, 6.0F) * -0.22F + 0.22F;
      legBR.rotateAngleZ = this.simplifyAngle(core.getHoverTicks(), 6.0F) * -0.22F + 0.22F;
      legBL.rotateAngleZ = this.simplifyAngle(core.getHoverTicks() - 3, 6.0F) * 0.22F - 0.22F;

      pincerLeft.rotateAngleY = this.simplifyAngle(core.getHoverTicks(), 5.0F) * 0.15F + 0.36F;
      pincerRight.rotateAngleY = this.simplifyAngle(core.getHoverTicks(), 5.0F) * -0.15F - 0.36F;

      lowerJaw.rotateAngleX = this.simplifyAngle(core.getHoverTicks(), 5.0F) * -0.15F + 0.25F;
      brainSac.rotateAngleZ =
          brain.rotateAngleZ = this.simplifyAngle(core.getHoverTicks() + 2, 5.0F) * -0.05F + 0.025F;
      brainSac.rotateAngleX =
          brain.rotateAngleX = this.simplifyAngle(core.getHoverTicks(), 3.0F) * -0.025F + 0.025F;
    } else {
      if (core.getDropTicks() > 10 && core.isNearTarget()) {
        upperLegFL.rotateAngleZ = this.simplifyAngle(core.getDropTicks(), 10.0F) * 0.38F - 0.38F;
        upperLegFR.rotateAngleZ =
            this.simplifyAngle(core.getDropTicks() - 7, 10.0F) * -0.38F + 0.38F;
        upperLegFML.rotateAngleZ =
            this.simplifyAngle(core.getDropTicks() + 4, 10.0F) * 0.21F - 0.21F;
        upperLegFMR.rotateAngleZ =
            this.simplifyAngle(core.getDropTicks() - 2, 10.0F) * -0.21F + 0.21F;
        legBML.rotateAngleZ = this.simplifyAngle(core.getDropTicks() + 4, 6.0F) * 0.22F - 0.22F;
        legBMR.rotateAngleZ = this.simplifyAngle(core.getDropTicks() + 2, 6.0F) * -0.22F + 0.22F;
        legBR.rotateAngleZ = this.simplifyAngle(core.getDropTicks(), 6.0F) * -0.22F + 0.22F;
        legBL.rotateAngleZ = this.simplifyAngle(core.getDropTicks() - 3, 6.0F) * 0.22F - 0.22F;

        pincerLeft.rotateAngleY = this.simplifyAngle(core.getDropTicks(), 5.0F) * 0.25F + 0.36F;
        pincerRight.rotateAngleY = this.simplifyAngle(core.getDropTicks(), 5.0F) * -0.25F - 0.36F;

        lowerJaw.rotateAngleX = this.simplifyAngle(core.getDropTicks(), 5.0F) * -0.15F + 0.25F;
        head.rotateAngleX = 1.05F;
      } else if (core.isNearTarget() || core.getHurtTicks() > 0) {
        upperLegFL.rotateAngleZ = this.simplifyAngle(core.ticksExisted, 10.0F) * 0.38F - 0.38F;
        upperLegFR.rotateAngleZ = this.simplifyAngle(core.ticksExisted - 7, 10.0F) * -0.38F + 0.38F;
        upperLegFML.rotateAngleZ = this.simplifyAngle(core.ticksExisted + 4, 10.0F) * 0.21F - 0.21F;
        upperLegFMR.rotateAngleZ =
            this.simplifyAngle(core.ticksExisted - 2, 10.0F) * -0.21F + 0.21F;
        legBML.rotateAngleZ = this.simplifyAngle(core.ticksExisted + 4, 6.0F) * 0.22F - 0.22F;
        legBMR.rotateAngleZ = this.simplifyAngle(core.ticksExisted + 2, 6.0F) * -0.22F + 0.22F;
        legBR.rotateAngleZ = this.simplifyAngle(core.ticksExisted, 6.0F) * -0.22F + 0.22F;
        legBL.rotateAngleZ = this.simplifyAngle(core.ticksExisted - 3, 6.0F) * 0.22F - 0.22F;

        pincerLeft.rotateAngleY = this.simplifyAngle(core.ticksExisted, 5.0F) * 0.25F + 0.36F;
        pincerRight.rotateAngleY = this.simplifyAngle(core.ticksExisted, 5.0F) * -0.25F - 0.36F;

        lowerJaw.rotateAngleX = this.simplifyAngle(core.getHoverTicks(), 5.0F) * -0.15F + 0.25F;
      }

      if (core.getVulnerableTicks() > 0 || core.getHurtTicks() > 0) {
        brainSac.rotateAngleZ =
            brain.rotateAngleZ =
                this.simplifyAngle(core.getVulnerableTicks() + 6, 15.0F) * -0.05F + 0.05F;
        brainSac.rotateAngleX =
            brain.rotateAngleX =
                this.simplifyAngle(core.getVulnerableTicks() - 12, 15.0F) * -0.05F + 0.05F;
        brainSac.rotateAngleY =
            brain.rotateAngleY =
                this.simplifyAngle(core.getVulnerableTicks(), 15.0F) * -0.05F + 0.05F;
      }
    }
  }
コード例 #17
0
  public void render(
      Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) {
    Main_Hull.rotateAngleX = 0F;
    Main_Hull.rotateAngleY = 0F;
    Main_Hull.rotateAngleZ = 0F;
    Main_Hull.renderWithRotation(par7);

    Right_Wall.rotateAngleX = 0F;
    Right_Wall.rotateAngleY = 0F;
    Right_Wall.rotateAngleZ = 0F;
    Right_Wall.renderWithRotation(par7);

    Right_Canopy.rotateAngleX = 0F;
    Right_Canopy.rotateAngleY = 0F;
    Right_Canopy.rotateAngleZ = 0F;
    Right_Canopy.renderWithRotation(par7);

    Left_Wall.rotateAngleX = 0F;
    Left_Wall.rotateAngleY = 0F;
    Left_Wall.rotateAngleZ = 0F;
    Left_Wall.renderWithRotation(par7);

    Left_Canopy.rotateAngleX = 0F;
    Left_Canopy.rotateAngleY = 0F;
    Left_Canopy.rotateAngleZ = 0F;
    Left_Canopy.renderWithRotation(par7);

    Back.rotateAngleX = 0F;
    Back.rotateAngleY = 0F;
    Back.rotateAngleZ = 0F;
    Back.renderWithRotation(par7);

    Back_Canopy.rotateAngleX = 0F;
    Back_Canopy.rotateAngleY = 0F;
    Back_Canopy.rotateAngleZ = 0F;
    Back_Canopy.renderWithRotation(par7);

    Top_Canopy.rotateAngleX = 0F;
    Top_Canopy.rotateAngleY = 0F;
    Top_Canopy.rotateAngleZ = 0F;
    GL11.glScalef(2, 2, 2);
    Top_Canopy.renderWithRotation(par7);
    GL11.glScalef(0.5f, 0.5f, 0.5f);

    Front.rotateAngleX = 0F;
    Front.rotateAngleY = 0F;
    Front.rotateAngleZ = 0F;
    Front.renderWithRotation(par7);

    Front_Canopy.rotateAngleX = 0F;
    Front_Canopy.rotateAngleY = 0F;
    Front_Canopy.rotateAngleZ = 0F;
    Front_Canopy.renderWithRotation(par7);

    Front_Tip.rotateAngleX = -0.1475227F;
    Front_Tip.rotateAngleY = 0F;
    Front_Tip.rotateAngleZ = 0F;
    Front_Tip.renderWithRotation(par7);

    Mast.rotateAngleX = 0F;
    Mast.rotateAngleY = 0F;
    Mast.rotateAngleZ = 0F;
    Mast.renderWithRotation(par7);

    Boom.rotateAngleX = 0F;
    Boom.rotateAngleY = 2.094395F;
    Boom.rotateAngleZ = 0F;
    Boom.renderWithRotation(par7);

    Sail_01.rotateAngleX = 0F;
    Sail_01.rotateAngleY = 2.094395F;
    Sail_01.rotateAngleZ = 0F;
    Sail_01.renderWithRotation(par7);

    Sail_02.rotateAngleX = 0F;
    Sail_02.rotateAngleY = 2.094395F;
    Sail_02.rotateAngleZ = 0F;
    Sail_02.renderWithRotation(par7);

    Sail_03.rotateAngleX = 0F;
    Sail_03.rotateAngleY = 2.094395F;
    Sail_03.rotateAngleZ = 0F;
    Sail_03.renderWithRotation(par7);

    Sail_04.rotateAngleX = 0F;
    Sail_04.rotateAngleY = 2.094395F;
    Sail_04.rotateAngleZ = 0F;
    Sail_04.renderWithRotation(par7);
  }
コード例 #18
0
  @Override
  public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
    float time = 0.02F;
    central_gem.rotateAngleY += time;
    gem.rotateAngleZ += time;
    gem2.rotateAngleZ -= time;

    glPushMatrix();
    //		glTranslated(0.5D, 1.5D, 0.5D);
    glRotatef(180F, 1F, 0F, 0F);
    glEnable(GL11.GL_BLEND);
    glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);

    Minecraft.getMinecraft().renderEngine.bindTexture(this.TEXTURE_STAFF[item.getItemDamage()]);

    if (type == ItemRenderType.INVENTORY) {
      //            GL11.glDisable(GL11.GL_LIGHTING);

      render(0.0625F);

      //            GL11.glEnable(GL11.GL_LIGHTING);
    } else {
      GL11.glEnable(GL12.GL_RESCALE_NORMAL);

      float scale;
      switch (type) {
        case EQUIPPED_FIRST_PERSON:
          glTranslatef(0F, -1.2F, -0.5F);
          glRotatef(200F, 0F, 1F, 0F);
          //	        		scale = 0.8F;
          //	            	glScalef(scale, scale, scale);

          break;
        case EQUIPPED:
          scale = 2.1F;
          glScalef(scale, scale, scale);
          glTranslatef(0.35F, -0.2F, -0.35F);
          //
          glRotatef(100, 0F, 1F, 0F);

          break;
        case ENTITY:
          glTranslatef(0, -6 / 16f, 0);
          break;
        default:
          break;
      }
      render(0.0625F);
    }
    GL11.glDisable(GL11.GL_BLEND);

    glPopMatrix();

    if (type == ItemRenderType.EQUIPPED_FIRST_PERSON) {
      if (item.getItemDamage() == 0) {
        Block block = Staff.getBlockHolding(item);
        if (block != null) {
          glPushMatrix();
          //	        		glRotatef(10F, 0F, 0F, 1F);

          float f = 1.5F;
          glScalef(f, f, f);
          glRotatef(-45, 0, 1, 0);

          EntityItem entityitem = new EntityItem(FMLClientHandler.instance().getWorldClient());
          entityitem.setEntityItemStack(new ItemStack(block));
          entityitem.hoverStart = 0F;
          itemRenderer.render(
              entityitem,
              -0.453F,
              1.0F + (float) Math.sin(System.currentTimeMillis() / 200D) / 200F,
              0.5F,
              false);
          glPopMatrix();
        }
      }
    }
  }
コード例 #19
0
 protected final void setRotation(ModelRenderer model, float x, float y, float z) {
   model.rotateAngleX = x;
   model.rotateAngleY = y;
   model.rotateAngleZ = z;
 }
コード例 #20
0
 private void setRotation(ModelRenderer model, float angleX, float angleY, float angleZ) {
   model.rotateAngleX = angleX;
   model.rotateAngleY = angleY;
   model.rotateAngleZ = angleZ;
 }
コード例 #21
0
  @Override
  public void setRotationAngles(
      float limbSwing,
      float prevLimbSwing,
      float rotateFloat,
      float rotationYaw,
      float rotationPitch,
      float partialTickTime,
      Entity entity) {
    final EntitySpiderEx spider = (EntitySpiderEx) entity;

    if (spider.getSpiderType() == EnumSpiderType.BOOM) {
      boomSpiderHead.rotateAngleY = rotationYaw / 57.29578F;
      boomSpiderHead.rotateAngleX = rotationPitch / 57.29578F;
      final float f6 = 0.7853982F;
      boomSpiderLeg1.rotateAngleZ = -f6;
      boomSpiderLeg2.rotateAngleZ = f6;
      boomSpiderLeg3.rotateAngleZ = -f6 * 0.74F;
      boomSpiderLeg4.rotateAngleZ = f6 * 0.74F;
      boomSpiderLeg5.rotateAngleZ = -f6 * 0.74F;
      boomSpiderLeg6.rotateAngleZ = f6 * 0.74F;
      boomSpiderLeg7.rotateAngleZ = -f6;
      boomSpiderLeg8.rotateAngleZ = f6;
      final float f7 = -0F;
      final float f8 = 0.3926991F;
      boomSpiderLeg1.rotateAngleY = f8 * 2.0F + f7;
      boomSpiderLeg2.rotateAngleY = -f8 * 2.0F - f7;
      boomSpiderLeg3.rotateAngleY = f8 * 1.0F + f7;
      boomSpiderLeg4.rotateAngleY = -f8 * 1.0F - f7;
      boomSpiderLeg5.rotateAngleY = -f8 * 1.0F + f7;
      boomSpiderLeg6.rotateAngleY = f8 * 1.0F - f7;
      boomSpiderLeg7.rotateAngleY = -f8 * 2.0F + f7;
      boomSpiderLeg8.rotateAngleY = f8 * 2.0F - f7;
      final float f9 = -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f10 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f11 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f12 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 4.712389F) * 0.4F) * prevLimbSwing;
      final float f13 = Math.abs(MathHelper.sin(limbSwing * 0.6662F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f14 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f15 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f16 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 4.712389F) * 0.4F) * prevLimbSwing;
      boomSpiderLeg1.rotateAngleY += f9;
      boomSpiderLeg2.rotateAngleY += -f9;
      boomSpiderLeg3.rotateAngleY += f10;
      boomSpiderLeg4.rotateAngleY += -f10;
      boomSpiderLeg5.rotateAngleY += f11;
      boomSpiderLeg6.rotateAngleY += -f11;
      boomSpiderLeg7.rotateAngleY += f12;
      boomSpiderLeg8.rotateAngleY += -f12;
      boomSpiderLeg1.rotateAngleZ += f13;
      boomSpiderLeg2.rotateAngleZ += -f13;
      boomSpiderLeg3.rotateAngleZ += f14;
      boomSpiderLeg4.rotateAngleZ += -f14;
      boomSpiderLeg5.rotateAngleZ += f15;
      boomSpiderLeg6.rotateAngleZ += -f15;
      boomSpiderLeg7.rotateAngleZ += f16;
      boomSpiderLeg8.rotateAngleZ += -f16;
    } else if (spider.getSpiderType() == EnumSpiderType.NOVA) {
      novaSpiderHead.rotateAngleY = rotationYaw / 57.29578F;
      novaSpiderHead.rotateAngleX = rotationPitch / 57.29578F;
      final float f6 = 0.7853982F;
      novaSpiderLeg1.rotateAngleZ = -f6;
      novaSpiderLeg2.rotateAngleZ = f6;
      novaSpiderLeg3.rotateAngleZ = -f6 * 0.74F;
      novaSpiderLeg4.rotateAngleZ = f6 * 0.74F;
      novaSpiderLeg5.rotateAngleZ = -f6 * 0.74F;
      novaSpiderLeg6.rotateAngleZ = f6 * 0.74F;
      novaSpiderLeg7.rotateAngleZ = -f6;
      novaSpiderLeg8.rotateAngleZ = f6;
      final float f7 = -0F;
      final float f8 = 0.3926991F;
      novaSpiderLeg1.rotateAngleY = f8 * 2.0F + f7;
      novaSpiderLeg2.rotateAngleY = -f8 * 2.0F - f7;
      novaSpiderLeg3.rotateAngleY = f8 * 1.0F + f7;
      novaSpiderLeg4.rotateAngleY = -f8 * 1.0F - f7;
      novaSpiderLeg5.rotateAngleY = -f8 * 1.0F + f7;
      novaSpiderLeg6.rotateAngleY = f8 * 1.0F - f7;
      novaSpiderLeg7.rotateAngleY = -f8 * 2.0F + f7;
      novaSpiderLeg8.rotateAngleY = f8 * 2.0F - f7;
      final float f9 = -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f10 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f11 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f12 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 4.712389F) * 0.4F) * prevLimbSwing;
      final float f13 = Math.abs(MathHelper.sin(limbSwing * 0.6662F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f14 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f15 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f16 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 4.712389F) * 0.4F) * prevLimbSwing;
      novaSpiderLeg1.rotateAngleY += f9;
      novaSpiderLeg2.rotateAngleY += -f9;
      novaSpiderLeg3.rotateAngleY += f10;
      novaSpiderLeg4.rotateAngleY += -f10;
      novaSpiderLeg5.rotateAngleY += f11;
      novaSpiderLeg6.rotateAngleY += -f11;
      novaSpiderLeg7.rotateAngleY += f12;
      novaSpiderLeg8.rotateAngleY += -f12;
      novaSpiderLeg1.rotateAngleZ += f13;
      novaSpiderLeg2.rotateAngleZ += -f13;
      novaSpiderLeg3.rotateAngleZ += f14;
      novaSpiderLeg4.rotateAngleZ += -f14;
      novaSpiderLeg5.rotateAngleZ += f15;
      novaSpiderLeg6.rotateAngleZ += -f15;
      novaSpiderLeg7.rotateAngleZ += f16;
      novaSpiderLeg8.rotateAngleZ += -f16;
    } else if (spider.getSpiderType() == EnumSpiderType.SLINGER) {
      slingerSpiderHead.rotateAngleY = rotationYaw / 57.29578F;
      slingerSpiderHead.rotateAngleX = rotationPitch / 57.29578F;
      final float f6 = 0.7853982F;
      slingerSpiderLeg1.rotateAngleZ = -f6;
      slingerSpiderLeg2.rotateAngleZ = f6;
      slingerSpiderLeg3.rotateAngleZ = -f6 * 0.74F;
      slingerSpiderLeg4.rotateAngleZ = f6 * 0.74F;
      slingerSpiderLeg5.rotateAngleZ = -f6 * 0.74F;
      slingerSpiderLeg6.rotateAngleZ = f6 * 0.74F;
      slingerSpiderLeg7.rotateAngleZ = -f6;
      slingerSpiderLeg8.rotateAngleZ = f6;
      final float f7 = -0F;
      final float f8 = 0.3926991F;
      slingerSpiderLeg1.rotateAngleY = f8 * 2.0F + f7;
      slingerSpiderLeg2.rotateAngleY = -f8 * 2.0F - f7;
      slingerSpiderLeg3.rotateAngleY = f8 * 1.0F + f7;
      slingerSpiderLeg4.rotateAngleY = -f8 * 1.0F - f7;
      slingerSpiderLeg5.rotateAngleY = -f8 * 1.0F + f7;
      slingerSpiderLeg6.rotateAngleY = f8 * 1.0F - f7;
      slingerSpiderLeg7.rotateAngleY = -f8 * 2.0F + f7;
      slingerSpiderLeg8.rotateAngleY = f8 * 2.0F - f7;
      final float f9 = -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f10 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f11 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f12 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 4.712389F) * 0.4F) * prevLimbSwing;
      final float f13 = Math.abs(MathHelper.sin(limbSwing * 0.6662F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f14 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f15 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f16 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 4.712389F) * 0.4F) * prevLimbSwing;
      slingerSpiderLeg1.rotateAngleY += f9;
      slingerSpiderLeg2.rotateAngleY += -f9;
      slingerSpiderLeg3.rotateAngleY += f10;
      slingerSpiderLeg4.rotateAngleY += -f10;
      slingerSpiderLeg5.rotateAngleY += f11;
      slingerSpiderLeg6.rotateAngleY += -f11;
      slingerSpiderLeg7.rotateAngleY += f12;
      slingerSpiderLeg8.rotateAngleY += -f12;
      slingerSpiderLeg1.rotateAngleZ += f13;
      slingerSpiderLeg2.rotateAngleZ += -f13;
      slingerSpiderLeg3.rotateAngleZ += f14;
      slingerSpiderLeg4.rotateAngleZ += -f14;
      slingerSpiderLeg5.rotateAngleZ += f15;
      slingerSpiderLeg6.rotateAngleZ += -f15;
      slingerSpiderLeg7.rotateAngleZ += f16;
      slingerSpiderLeg8.rotateAngleZ += -f16;
    } else if (spider.getSpiderType() == EnumSpiderType.TANK) {
      tankSpiderHead.rotateAngleY = rotationYaw / 57.29578F;
      tankSpiderHead.rotateAngleX = rotationPitch / 57.29578F;
      final float f6 = 0.7853982F;
      tankSpiderLeg1.rotateAngleZ = -f6;
      tankSpiderLeg2.rotateAngleZ = f6;
      tankSpiderLeg3.rotateAngleZ = -f6 * 0.74F;
      tankSpiderLeg4.rotateAngleZ = f6 * 0.74F;
      tankSpiderLeg5.rotateAngleZ = -f6 * 0.74F;
      tankSpiderLeg6.rotateAngleZ = f6 * 0.74F;
      tankSpiderLeg7.rotateAngleZ = -f6;
      tankSpiderLeg8.rotateAngleZ = f6;
      final float f7 = -0F;
      final float f8 = 0.3926991F;
      tankSpiderLeg1.rotateAngleY = f8 * 2.0F + f7;
      tankSpiderLeg2.rotateAngleY = -f8 * 2.0F - f7;
      tankSpiderLeg3.rotateAngleY = f8 * 1.0F + f7;
      tankSpiderLeg4.rotateAngleY = -f8 * 1.0F - f7;
      tankSpiderLeg5.rotateAngleY = -f8 * 1.0F + f7;
      tankSpiderLeg6.rotateAngleY = f8 * 1.0F - f7;
      tankSpiderLeg7.rotateAngleY = -f8 * 2.0F + f7;
      tankSpiderLeg8.rotateAngleY = f8 * 2.0F - f7;
      final float f9 = -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f10 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f11 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f12 =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + 4.712389F) * 0.4F) * prevLimbSwing;
      final float f13 = Math.abs(MathHelper.sin(limbSwing * 0.6662F + 0.0F) * 0.4F) * prevLimbSwing;
      final float f14 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 3.141593F) * 0.4F) * prevLimbSwing;
      final float f15 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 1.570796F) * 0.4F) * prevLimbSwing;
      final float f16 =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + 4.712389F) * 0.4F) * prevLimbSwing;
      tankSpiderLeg1.rotateAngleY += f9;
      tankSpiderLeg2.rotateAngleY += -f9;
      tankSpiderLeg3.rotateAngleY += f10;
      tankSpiderLeg4.rotateAngleY += -f10;
      tankSpiderLeg5.rotateAngleY += f11;
      tankSpiderLeg6.rotateAngleY += -f11;
      tankSpiderLeg7.rotateAngleY += f12;
      tankSpiderLeg8.rotateAngleY += -f12;
      tankSpiderLeg1.rotateAngleZ += f13;
      tankSpiderLeg2.rotateAngleZ += -f13;
      tankSpiderLeg3.rotateAngleZ += f14;
      tankSpiderLeg4.rotateAngleZ += -f14;
      tankSpiderLeg5.rotateAngleZ += f15;
      tankSpiderLeg6.rotateAngleZ += -f15;
      tankSpiderLeg7.rotateAngleZ += f16;
      tankSpiderLeg8.rotateAngleZ += -f16;
    } else if (spider.getSpiderType() == EnumSpiderType.ENDER) {
      final float quarterCircle = (float) Math.PI / 4F;
      enderSpiderLeg1.rotateAngleZ = -quarterCircle;
      enderSpiderLeg2.rotateAngleZ = quarterCircle;
      enderSpiderLeg3.rotateAngleZ = -quarterCircle * 0.74F;
      enderSpiderLeg4.rotateAngleZ = quarterCircle * 0.74F;
      enderSpiderLeg5.rotateAngleZ = -quarterCircle * 0.74F;
      enderSpiderLeg6.rotateAngleZ = quarterCircle * 0.74F;
      enderSpiderLeg7.rotateAngleZ = -quarterCircle;
      enderSpiderLeg8.rotateAngleZ = quarterCircle;

      final float eighthCircle = (float) Math.PI / 8F;
      enderSpiderLeg1.rotateAngleY = eighthCircle * 2.0F;
      enderSpiderLeg2.rotateAngleY = -eighthCircle * 2.0F;
      enderSpiderLeg3.rotateAngleY = eighthCircle * 1.0F;
      enderSpiderLeg4.rotateAngleY = -eighthCircle * 1.0F;
      enderSpiderLeg5.rotateAngleY = -eighthCircle * 1.0F;
      enderSpiderLeg6.rotateAngleY = eighthCircle * 1.0F;
      enderSpiderLeg7.rotateAngleY = -eighthCircle * 2.0F;
      enderSpiderLeg8.rotateAngleY = eighthCircle * 2.0F;

      final float frontRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F) * 0.4F) * prevLimbSwing;
      final float frontMidRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + (float) Math.PI) * 0.4F) * prevLimbSwing;
      final float backMidRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + (float) Math.PI / 2F) * 0.4F)
              * prevLimbSwing;
      final float backRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + (float) Math.PI * 3F / 2F) * 0.4F)
              * prevLimbSwing;
      final float frontRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F) * 0.4F) * prevLimbSwing;
      final float frontMidRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + (float) Math.PI) * 0.4F) * prevLimbSwing;
      final float backMidRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + (float) Math.PI / 2F) * 0.4F)
              * prevLimbSwing;
      final float backRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + (float) Math.PI * 3F / 2F) * 0.4F)
              * prevLimbSwing;

      enderSpiderLeg1.rotateAngleY += frontRotateY;
      enderSpiderLeg2.rotateAngleY += -frontRotateY;
      enderSpiderLeg3.rotateAngleY += frontMidRotateY;
      enderSpiderLeg4.rotateAngleY += -frontMidRotateY;
      enderSpiderLeg5.rotateAngleY += backMidRotateY;
      enderSpiderLeg6.rotateAngleY += -backMidRotateY;
      enderSpiderLeg7.rotateAngleY += backRotateY;
      enderSpiderLeg8.rotateAngleY += -backRotateY;
      enderSpiderLeg1.rotateAngleZ += frontRotateZ;
      enderSpiderLeg2.rotateAngleZ += -frontRotateZ;
      enderSpiderLeg3.rotateAngleZ += frontMidRotateZ;
      enderSpiderLeg4.rotateAngleZ += -frontMidRotateZ;
      enderSpiderLeg5.rotateAngleZ += backMidRotateZ;
      enderSpiderLeg6.rotateAngleZ += -backMidRotateZ;
      enderSpiderLeg7.rotateAngleZ += backRotateZ;
      enderSpiderLeg8.rotateAngleZ += -backRotateZ;
    } else {
      defaultSpiderHead.rotateAngleY = rotationYaw / (180F / (float) Math.PI);
      defaultSpiderHead.rotateAngleX = rotationPitch / (180F / (float) Math.PI);

      final float quarterCircle = (float) Math.PI / 4F;
      defaultSpiderLeg1.rotateAngleZ = -quarterCircle;
      defaultSpiderLeg2.rotateAngleZ = quarterCircle;
      defaultSpiderLeg3.rotateAngleZ = -quarterCircle * 0.74F;
      defaultSpiderLeg4.rotateAngleZ = quarterCircle * 0.74F;
      defaultSpiderLeg5.rotateAngleZ = -quarterCircle * 0.74F;
      defaultSpiderLeg6.rotateAngleZ = quarterCircle * 0.74F;
      defaultSpiderLeg7.rotateAngleZ = -quarterCircle;
      defaultSpiderLeg8.rotateAngleZ = quarterCircle;

      final float eighthCircle = (float) Math.PI / 8F;
      defaultSpiderLeg1.rotateAngleY = eighthCircle * 2.0F;
      defaultSpiderLeg2.rotateAngleY = -eighthCircle * 2.0F;
      defaultSpiderLeg3.rotateAngleY = eighthCircle * 1.0F;
      defaultSpiderLeg4.rotateAngleY = -eighthCircle * 1.0F;
      defaultSpiderLeg5.rotateAngleY = -eighthCircle * 1.0F;
      defaultSpiderLeg6.rotateAngleY = eighthCircle * 1.0F;
      defaultSpiderLeg7.rotateAngleY = -eighthCircle * 2.0F;
      defaultSpiderLeg8.rotateAngleY = eighthCircle * 2.0F;

      final float frontRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F) * 0.4F) * prevLimbSwing;
      final float frontMidRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + (float) Math.PI) * 0.4F) * prevLimbSwing;
      final float backMidRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + (float) Math.PI / 2F) * 0.4F)
              * prevLimbSwing;
      final float backRotateY =
          -(MathHelper.cos(limbSwing * 0.6662F * 2.0F + (float) Math.PI * 3F / 2F) * 0.4F)
              * prevLimbSwing;
      final float frontRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F) * 0.4F) * prevLimbSwing;
      final float frontMidRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + (float) Math.PI) * 0.4F) * prevLimbSwing;
      final float backMidRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + (float) Math.PI / 2F) * 0.4F)
              * prevLimbSwing;
      final float backRotateZ =
          Math.abs(MathHelper.sin(limbSwing * 0.6662F + (float) Math.PI * 3F / 2F) * 0.4F)
              * prevLimbSwing;

      defaultSpiderLeg1.rotateAngleY += frontRotateY;
      defaultSpiderLeg2.rotateAngleY += -frontRotateY;
      defaultSpiderLeg3.rotateAngleY += frontMidRotateY;
      defaultSpiderLeg4.rotateAngleY += -frontMidRotateY;
      defaultSpiderLeg5.rotateAngleY += backMidRotateY;
      defaultSpiderLeg6.rotateAngleY += -backMidRotateY;
      defaultSpiderLeg7.rotateAngleY += backRotateY;
      defaultSpiderLeg8.rotateAngleY += -backRotateY;
      defaultSpiderLeg1.rotateAngleZ += frontRotateZ;
      defaultSpiderLeg2.rotateAngleZ += -frontRotateZ;
      defaultSpiderLeg3.rotateAngleZ += frontMidRotateZ;
      defaultSpiderLeg4.rotateAngleZ += -frontMidRotateZ;
      defaultSpiderLeg5.rotateAngleZ += backMidRotateZ;
      defaultSpiderLeg6.rotateAngleZ += -backMidRotateZ;
      defaultSpiderLeg7.rotateAngleZ += backRotateZ;
      defaultSpiderLeg8.rotateAngleZ += -backRotateZ;
    }
  }
コード例 #22
0
 private void resetRotationsOnPart(ModelRenderer mr) {
   mr.rotateAngleX = 0;
   mr.rotateAngleY = 0;
   mr.rotateAngleZ = 0;
 }
コード例 #23
0
  private void initTankSpider() {
    tankSpiderHead = new ModelRenderer(this, 32, 4);
    tankSpiderHead.addBox(-4F, -4F, -8F, 8, 8, 8, 0.0F);
    tankSpiderHead.setRotationPoint(0F, 15F, -3F);
    tankSpiderHead.rotateAngleX = 0.18081F;
    tankSpiderHead.rotateAngleZ = -0.27122F;

    tankSpiderBody = new ModelRenderer(this, 0, 0);
    tankSpiderBody.addBox(-3F, -3F, -3F, 6, 6, 6, 0.0F);
    tankSpiderBody.setRotationPoint(0F, 15F, 0F);

    tankSpiderRearEnd = new ModelRenderer(this, 0, 12);
    tankSpiderRearEnd.addBox(-5F, -4F, -6F, 12, 9, 12, 0.0F);
    tankSpiderRearEnd.setRotationPoint(-1F, 14F, 9F);

    tankSpiderLeg1 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg1.addBox(-15F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg1.setRotationPoint(-4F, 15F, 2F);
    tankSpiderLeg1.rotateAngleX = 0.57596F;
    tankSpiderLeg1.rotateAngleY = 0.19199F;

    tankSpiderLeg2 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg2.addBox(-1F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg2.setRotationPoint(4F, 15F, 2F);
    tankSpiderLeg2.rotateAngleX = -0.57596F;
    tankSpiderLeg2.rotateAngleY = -0.19199F;

    tankSpiderLeg3 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg3.addBox(-15F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg3.setRotationPoint(-4F, 15F, 1F);
    tankSpiderLeg3.rotateAngleX = 0.27925F;
    tankSpiderLeg3.rotateAngleY = 0.19199F;

    tankSpiderLeg4 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg4.addBox(-1F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg4.setRotationPoint(4F, 15F, 1F);
    tankSpiderLeg4.rotateAngleX = -0.27925F;
    tankSpiderLeg4.rotateAngleY = -0.19199F;

    tankSpiderLeg5 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg5.addBox(-15F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg5.setRotationPoint(-4F, 15F, 0F);
    tankSpiderLeg5.rotateAngleX = -0.27925F;
    tankSpiderLeg5.rotateAngleY = 0.19199F;

    tankSpiderLeg6 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg6.addBox(-1F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg6.setRotationPoint(4F, 15F, 0F);
    tankSpiderLeg6.rotateAngleX = 0.27925F;
    tankSpiderLeg6.rotateAngleY = -0.19199F;

    tankSpiderLeg7 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg7.addBox(-15F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg7.setRotationPoint(-4F, 15F, -1F);
    tankSpiderLeg7.rotateAngleX = -0.57596F;
    tankSpiderLeg7.rotateAngleY = 0.19199F;

    tankSpiderLeg8 = new ModelRenderer(this, 18, 0);
    tankSpiderLeg8.addBox(-1F, -1F, -1F, 16, 2, 2, 0.0F);
    tankSpiderLeg8.setRotationPoint(4F, 15F, -1F);
    tankSpiderLeg8.rotateAngleX = 0.57596F;
    tankSpiderLeg8.rotateAngleY = -0.19199F;

    tankSpiderTopBulk = new ModelRenderer(this, 0, 12);
    tankSpiderTopBulk.addBox(0F, 0F, 0F, 8, 2, 9, 0.0F);
    tankSpiderTopBulk.setRotationPoint(-4F, 8F, 4F);

    tankSpiderBackBulk = new ModelRenderer(this, 0, 12);
    tankSpiderBackBulk.addBox(-4F, -2F, 0F, 7, 6, 2, 0.0F);
    tankSpiderBackBulk.setRotationPoint(0F, 14F, 15F);

    tankSpiderLeftBulk = new ModelRenderer(this, 0, 12);
    tankSpiderLeftBulk.addBox(0F, -2F, -3F, 2, 4, 9, 0.0F);
    tankSpiderLeftBulk.setRotationPoint(6F, 15F, 7F);

    tankSpiderRightBulk = new ModelRenderer(this, 0, 12);
    tankSpiderRightBulk.addBox(-2F, -2F, -3F, 2, 4, 10, 0.0F);
    tankSpiderRightBulk.setRotationPoint(-6F, 15F, 7F);
  }
コード例 #24
0
 public void setPieceRotation(ModelRenderer model, float x, float y, float z) {
   model.rotateAngleX = x;
   model.rotateAngleY = y;
   model.rotateAngleZ = z;
 }
コード例 #25
0
ファイル: Model.java プロジェクト: hsyyid/GTA-V-Mod
 /** Set the rotation angles of the specified ModelRenderer instance. */
 public void setRotation(
     ModelRenderer model, float rotateAngleX, float rotateAngleY, float rotateAngleZ) {
   model.rotateAngleX = rotateAngleX;
   model.rotateAngleY = rotateAngleY;
   model.rotateAngleZ = rotateAngleZ;
 }