diff options
Diffstat (limited to 'src/main/java/gtPlusPlus/australia/entity')
12 files changed, 1415 insertions, 1368 deletions
diff --git a/src/main/java/gtPlusPlus/australia/entity/model/ModelAustralianSpider.java b/src/main/java/gtPlusPlus/australia/entity/model/ModelAustralianSpider.java index 05b43b7558..c9ab30bc4f 100644 --- a/src/main/java/gtPlusPlus/australia/entity/model/ModelAustralianSpider.java +++ b/src/main/java/gtPlusPlus/australia/entity/model/ModelAustralianSpider.java @@ -10,139 +10,150 @@ import net.minecraft.util.MathHelper; @SideOnly(Side.CLIENT) public class ModelAustralianSpider extends ModelBase { - /** The spider's head box */ - public ModelRenderer spiderHead; - /** The spider's neck box */ - public ModelRenderer spiderNeck; - /** The spider's body box */ - public ModelRenderer spiderBody; - /** Spider's first leg */ - public ModelRenderer spiderLeg1; - /** Spider's second leg */ - public ModelRenderer spiderLeg2; - /** Spider's third leg */ - public ModelRenderer spiderLeg3; - /** Spider's fourth leg */ - public ModelRenderer spiderLeg4; - /** Spider's fifth leg */ - public ModelRenderer spiderLeg5; - /** Spider's sixth leg */ - public ModelRenderer spiderLeg6; - /** Spider's seventh leg */ - public ModelRenderer spiderLeg7; - /** Spider's eight leg */ - public ModelRenderer spiderLeg8; + /** The spider's head box */ + public ModelRenderer spiderHead; + /** The spider's neck box */ + public ModelRenderer spiderNeck; + /** The spider's body box */ + public ModelRenderer spiderBody; + /** Spider's first leg */ + public ModelRenderer spiderLeg1; + /** Spider's second leg */ + public ModelRenderer spiderLeg2; + /** Spider's third leg */ + public ModelRenderer spiderLeg3; + /** Spider's fourth leg */ + public ModelRenderer spiderLeg4; + /** Spider's fifth leg */ + public ModelRenderer spiderLeg5; + /** Spider's sixth leg */ + public ModelRenderer spiderLeg6; + /** Spider's seventh leg */ + public ModelRenderer spiderLeg7; + /** Spider's eight leg */ + public ModelRenderer spiderLeg8; - public ModelAustralianSpider() { - float f = 0.0F; - byte b0 = 15; - this.spiderHead = new ModelRenderer(this, 32, 4); - this.spiderHead.addBox(-4.0F, -4.0F, -8.0F, 8, 8, 8, f); - this.spiderHead.setRotationPoint(0.0F, (float) b0, -3.0F); - this.spiderNeck = new ModelRenderer(this, 0, 0); - this.spiderNeck.addBox(-3.0F, -3.0F, -3.0F, 6, 6, 6, f); - this.spiderNeck.setRotationPoint(0.0F, (float) b0, 0.0F); - this.spiderBody = new ModelRenderer(this, 0, 12); - this.spiderBody.addBox(-5.0F, -4.0F, -6.0F, 10, 8, 12, f); - this.spiderBody.setRotationPoint(0.0F, (float) b0, 9.0F); - this.spiderLeg1 = new ModelRenderer(this, 18, 0); - this.spiderLeg1.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg1.setRotationPoint(-4.0F, (float) b0, 2.0F); - this.spiderLeg2 = new ModelRenderer(this, 18, 0); - this.spiderLeg2.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg2.setRotationPoint(4.0F, (float) b0, 2.0F); - this.spiderLeg3 = new ModelRenderer(this, 18, 0); - this.spiderLeg3.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg3.setRotationPoint(-4.0F, (float) b0, 1.0F); - this.spiderLeg4 = new ModelRenderer(this, 18, 0); - this.spiderLeg4.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg4.setRotationPoint(4.0F, (float) b0, 1.0F); - this.spiderLeg5 = new ModelRenderer(this, 18, 0); - this.spiderLeg5.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg5.setRotationPoint(-4.0F, (float) b0, 0.0F); - this.spiderLeg6 = new ModelRenderer(this, 18, 0); - this.spiderLeg6.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg6.setRotationPoint(4.0F, (float) b0, 0.0F); - this.spiderLeg7 = new ModelRenderer(this, 18, 0); - this.spiderLeg7.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg7.setRotationPoint(-4.0F, (float) b0, -1.0F); - this.spiderLeg8 = new ModelRenderer(this, 18, 0); - this.spiderLeg8.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); - this.spiderLeg8.setRotationPoint(4.0F, (float) b0, -1.0F); - } + public ModelAustralianSpider() { + float f = 0.0F; + byte b0 = 15; + this.spiderHead = new ModelRenderer(this, 32, 4); + this.spiderHead.addBox(-4.0F, -4.0F, -8.0F, 8, 8, 8, f); + this.spiderHead.setRotationPoint(0.0F, (float) b0, -3.0F); + this.spiderNeck = new ModelRenderer(this, 0, 0); + this.spiderNeck.addBox(-3.0F, -3.0F, -3.0F, 6, 6, 6, f); + this.spiderNeck.setRotationPoint(0.0F, (float) b0, 0.0F); + this.spiderBody = new ModelRenderer(this, 0, 12); + this.spiderBody.addBox(-5.0F, -4.0F, -6.0F, 10, 8, 12, f); + this.spiderBody.setRotationPoint(0.0F, (float) b0, 9.0F); + this.spiderLeg1 = new ModelRenderer(this, 18, 0); + this.spiderLeg1.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg1.setRotationPoint(-4.0F, (float) b0, 2.0F); + this.spiderLeg2 = new ModelRenderer(this, 18, 0); + this.spiderLeg2.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg2.setRotationPoint(4.0F, (float) b0, 2.0F); + this.spiderLeg3 = new ModelRenderer(this, 18, 0); + this.spiderLeg3.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg3.setRotationPoint(-4.0F, (float) b0, 1.0F); + this.spiderLeg4 = new ModelRenderer(this, 18, 0); + this.spiderLeg4.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg4.setRotationPoint(4.0F, (float) b0, 1.0F); + this.spiderLeg5 = new ModelRenderer(this, 18, 0); + this.spiderLeg5.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg5.setRotationPoint(-4.0F, (float) b0, 0.0F); + this.spiderLeg6 = new ModelRenderer(this, 18, 0); + this.spiderLeg6.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg6.setRotationPoint(4.0F, (float) b0, 0.0F); + this.spiderLeg7 = new ModelRenderer(this, 18, 0); + this.spiderLeg7.addBox(-15.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg7.setRotationPoint(-4.0F, (float) b0, -1.0F); + this.spiderLeg8 = new ModelRenderer(this, 18, 0); + this.spiderLeg8.addBox(-1.0F, -1.0F, -1.0F, 16, 2, 2, f); + this.spiderLeg8.setRotationPoint(4.0F, (float) b0, -1.0F); + } - /** - * Sets the models various rotation angles then renders the model. - */ - public void render(Entity p_78088_1_, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, - float p_78088_6_, float p_78088_7_) { - this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); - this.spiderHead.render(p_78088_7_); - this.spiderNeck.render(p_78088_7_); - this.spiderBody.render(p_78088_7_); - this.spiderLeg1.render(p_78088_7_); - this.spiderLeg2.render(p_78088_7_); - this.spiderLeg3.render(p_78088_7_); - this.spiderLeg4.render(p_78088_7_); - this.spiderLeg5.render(p_78088_7_); - this.spiderLeg6.render(p_78088_7_); - this.spiderLeg7.render(p_78088_7_); - this.spiderLeg8.render(p_78088_7_); - } + /** + * Sets the models various rotation angles then renders the model. + */ + public void render( + Entity p_78088_1_, + float p_78088_2_, + float p_78088_3_, + float p_78088_4_, + float p_78088_5_, + float p_78088_6_, + float p_78088_7_) { + this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); + this.spiderHead.render(p_78088_7_); + this.spiderNeck.render(p_78088_7_); + this.spiderBody.render(p_78088_7_); + this.spiderLeg1.render(p_78088_7_); + this.spiderLeg2.render(p_78088_7_); + this.spiderLeg3.render(p_78088_7_); + this.spiderLeg4.render(p_78088_7_); + this.spiderLeg5.render(p_78088_7_); + this.spiderLeg6.render(p_78088_7_); + this.spiderLeg7.render(p_78088_7_); + this.spiderLeg8.render(p_78088_7_); + } - /** - * Sets the model's various rotation angles. For bipeds, par1 and par2 are used - * for animating the movement of arms and legs, where par1 represents the - * time(so that arms and legs swing back and forth) and par2 represents how - * "far" arms and legs can swing at most. - */ - public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, - float p_78087_5_, float p_78087_6_, Entity p_78087_7_) { - this.spiderHead.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI); - this.spiderHead.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI); - float f6 = ((float) Math.PI / 4F); - this.spiderLeg1.rotateAngleZ = -f6; - this.spiderLeg2.rotateAngleZ = f6; - this.spiderLeg3.rotateAngleZ = -f6 * 0.74F; - this.spiderLeg4.rotateAngleZ = f6 * 0.74F; - this.spiderLeg5.rotateAngleZ = -f6 * 0.74F; - this.spiderLeg6.rotateAngleZ = f6 * 0.74F; - this.spiderLeg7.rotateAngleZ = -f6; - this.spiderLeg8.rotateAngleZ = f6; - float f7 = -0.0F; - float f8 = 0.3926991F; - this.spiderLeg1.rotateAngleY = f8 * 2.0F + f7; - this.spiderLeg2.rotateAngleY = -f8 * 2.0F - f7; - this.spiderLeg3.rotateAngleY = f8 * 1.0F + f7; - this.spiderLeg4.rotateAngleY = -f8 * 1.0F - f7; - this.spiderLeg5.rotateAngleY = -f8 * 1.0F + f7; - this.spiderLeg6.rotateAngleY = f8 * 1.0F - f7; - this.spiderLeg7.rotateAngleY = -f8 * 2.0F + f7; - this.spiderLeg8.rotateAngleY = f8 * 2.0F - f7; - float f9 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + 0.0F) * 0.4F) * p_78087_2_; - float f10 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + (float) Math.PI) * 0.4F) * p_78087_2_; - float f11 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + ((float) Math.PI / 2F)) * 0.4F) * p_78087_2_; - float f12 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + ((float) Math.PI * 3F / 2F)) * 0.4F) * p_78087_2_; - float f13 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + 0.0F) * 0.4F) * p_78087_2_; - float f14 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + (float) Math.PI) * 0.4F) * p_78087_2_; - float f15 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + ((float) Math.PI / 2F)) * 0.4F) * p_78087_2_; - float f16 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + ((float) Math.PI * 3F / 2F)) * 0.4F) * p_78087_2_; - this.spiderLeg1.rotateAngleY += f9; - this.spiderLeg2.rotateAngleY += -f9; - this.spiderLeg3.rotateAngleY += f10; - this.spiderLeg4.rotateAngleY += -f10; - this.spiderLeg5.rotateAngleY += f11; - this.spiderLeg6.rotateAngleY += -f11; - this.spiderLeg7.rotateAngleY += f12; - this.spiderLeg8.rotateAngleY += -f12; - this.spiderLeg1.rotateAngleZ += f13; - this.spiderLeg2.rotateAngleZ += -f13; - this.spiderLeg3.rotateAngleZ += f14; - this.spiderLeg4.rotateAngleZ += -f14; - this.spiderLeg5.rotateAngleZ += f15; - this.spiderLeg6.rotateAngleZ += -f15; - this.spiderLeg7.rotateAngleZ += f16; - this.spiderLeg8.rotateAngleZ += -f16; - } - -}
\ No newline at end of file + /** + * Sets the model's various rotation angles. For bipeds, par1 and par2 are used + * for animating the movement of arms and legs, where par1 represents the + * time(so that arms and legs swing back and forth) and par2 represents how + * "far" arms and legs can swing at most. + */ + public void setRotationAngles( + float p_78087_1_, + float p_78087_2_, + float p_78087_3_, + float p_78087_4_, + float p_78087_5_, + float p_78087_6_, + Entity p_78087_7_) { + this.spiderHead.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI); + this.spiderHead.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI); + float f6 = ((float) Math.PI / 4F); + this.spiderLeg1.rotateAngleZ = -f6; + this.spiderLeg2.rotateAngleZ = f6; + this.spiderLeg3.rotateAngleZ = -f6 * 0.74F; + this.spiderLeg4.rotateAngleZ = f6 * 0.74F; + this.spiderLeg5.rotateAngleZ = -f6 * 0.74F; + this.spiderLeg6.rotateAngleZ = f6 * 0.74F; + this.spiderLeg7.rotateAngleZ = -f6; + this.spiderLeg8.rotateAngleZ = f6; + float f7 = -0.0F; + float f8 = 0.3926991F; + this.spiderLeg1.rotateAngleY = f8 * 2.0F + f7; + this.spiderLeg2.rotateAngleY = -f8 * 2.0F - f7; + this.spiderLeg3.rotateAngleY = f8 * 1.0F + f7; + this.spiderLeg4.rotateAngleY = -f8 * 1.0F - f7; + this.spiderLeg5.rotateAngleY = -f8 * 1.0F + f7; + this.spiderLeg6.rotateAngleY = f8 * 1.0F - f7; + this.spiderLeg7.rotateAngleY = -f8 * 2.0F + f7; + this.spiderLeg8.rotateAngleY = f8 * 2.0F - f7; + float f9 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + 0.0F) * 0.4F) * p_78087_2_; + float f10 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + (float) Math.PI) * 0.4F) * p_78087_2_; + float f11 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + ((float) Math.PI / 2F)) * 0.4F) * p_78087_2_; + float f12 = -(MathHelper.cos(p_78087_1_ * 0.6662F * 2.0F + ((float) Math.PI * 3F / 2F)) * 0.4F) * p_78087_2_; + float f13 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + 0.0F) * 0.4F) * p_78087_2_; + float f14 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + (float) Math.PI) * 0.4F) * p_78087_2_; + float f15 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + ((float) Math.PI / 2F)) * 0.4F) * p_78087_2_; + float f16 = Math.abs(MathHelper.sin(p_78087_1_ * 0.6662F + ((float) Math.PI * 3F / 2F)) * 0.4F) * p_78087_2_; + this.spiderLeg1.rotateAngleY += f9; + this.spiderLeg2.rotateAngleY += -f9; + this.spiderLeg3.rotateAngleY += f10; + this.spiderLeg4.rotateAngleY += -f10; + this.spiderLeg5.rotateAngleY += f11; + this.spiderLeg6.rotateAngleY += -f11; + this.spiderLeg7.rotateAngleY += f12; + this.spiderLeg8.rotateAngleY += -f12; + this.spiderLeg1.rotateAngleZ += f13; + this.spiderLeg2.rotateAngleZ += -f13; + this.spiderLeg3.rotateAngleZ += f14; + this.spiderLeg4.rotateAngleZ += -f14; + this.spiderLeg5.rotateAngleZ += f15; + this.spiderLeg6.rotateAngleZ += -f15; + this.spiderLeg7.rotateAngleZ += f16; + this.spiderLeg8.rotateAngleZ += -f16; + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/model/ModelBoar.java b/src/main/java/gtPlusPlus/australia/entity/model/ModelBoar.java index 7d858e39f0..3d1a5b5ef7 100644 --- a/src/main/java/gtPlusPlus/australia/entity/model/ModelBoar.java +++ b/src/main/java/gtPlusPlus/australia/entity/model/ModelBoar.java @@ -6,15 +6,14 @@ import net.minecraft.client.model.ModelQuadruped; @SideOnly(Side.CLIENT) public class ModelBoar extends ModelQuadruped { - - public ModelBoar() { - this(0.0F); - } - public ModelBoar(float p_i1151_1_) { - super(6, p_i1151_1_); - this.head.setTextureOffset(16, 16).addBox(-2.0F, 0.0F, -9.0F, 4, 3, 1, p_i1151_1_); - this.field_78145_g = 4.0F; - } - -}
\ No newline at end of file + public ModelBoar() { + this(0.0F); + } + + public ModelBoar(float p_i1151_1_) { + super(6, p_i1151_1_); + this.head.setTextureOffset(16, 16).addBox(-2.0F, 0.0F, -9.0F, 4, 3, 1, p_i1151_1_); + this.field_78145_g = 4.0F; + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/model/ModelDingo.java b/src/main/java/gtPlusPlus/australia/entity/model/ModelDingo.java index 2999cdf2dd..51bce24794 100644 --- a/src/main/java/gtPlusPlus/australia/entity/model/ModelDingo.java +++ b/src/main/java/gtPlusPlus/australia/entity/model/ModelDingo.java @@ -12,157 +12,168 @@ import org.lwjgl.opengl.GL11; @SideOnly(Side.CLIENT) public class ModelDingo extends ModelBase { - - /** main box for the dingo head */ - public ModelRenderer dingoHeadMain; - /** The dingo's body */ - public ModelRenderer dingoBody; - /** dingo'se first leg */ - public ModelRenderer dingoLeg1; - /** dingo's second leg */ - public ModelRenderer dingoLeg2; - /** dingo's third leg */ - public ModelRenderer dingoLeg3; - /** dingo's fourth leg */ - public ModelRenderer dingoLeg4; - /** The dingo's tail */ - ModelRenderer dingoTail; - /** The dingo's mane */ - ModelRenderer dingoMane; - public ModelDingo() { - float f = 0.0F; - float f1 = 13.5F; - this.dingoHeadMain = new ModelRenderer(this, 0, 0); - this.dingoHeadMain.addBox(-3.0F, -3.0F, -2.0F, 6, 6, 4, f); - this.dingoHeadMain.setRotationPoint(-1.0F, f1, -7.0F); - this.dingoBody = new ModelRenderer(this, 18, 14); - this.dingoBody.addBox(-4.0F, -2.0F, -3.0F, 6, 9, 6, f); - this.dingoBody.setRotationPoint(0.0F, 14.0F, 2.0F); - this.dingoMane = new ModelRenderer(this, 21, 0); - this.dingoMane.addBox(-4.0F, -3.0F, -3.0F, 8, 6, 7, f); - this.dingoMane.setRotationPoint(-1.0F, 14.0F, 2.0F); - this.dingoLeg1 = new ModelRenderer(this, 0, 18); - this.dingoLeg1.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.dingoLeg1.setRotationPoint(-2.5F, 16.0F, 7.0F); - this.dingoLeg2 = new ModelRenderer(this, 0, 18); - this.dingoLeg2.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.dingoLeg2.setRotationPoint(0.5F, 16.0F, 7.0F); - this.dingoLeg3 = new ModelRenderer(this, 0, 18); - this.dingoLeg3.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.dingoLeg3.setRotationPoint(-2.5F, 16.0F, -4.0F); - this.dingoLeg4 = new ModelRenderer(this, 0, 18); - this.dingoLeg4.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.dingoLeg4.setRotationPoint(0.5F, 16.0F, -4.0F); - this.dingoTail = new ModelRenderer(this, 9, 18); - this.dingoTail.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); - this.dingoTail.setRotationPoint(-1.0F, 12.0F, 8.0F); - this.dingoHeadMain.setTextureOffset(16, 14).addBox(-3.0F, -5.0F, 0.0F, 2, 2, 1, f); - this.dingoHeadMain.setTextureOffset(16, 14).addBox(1.0F, -5.0F, 0.0F, 2, 2, 1, f); - this.dingoHeadMain.setTextureOffset(0, 10).addBox(-1.5F, 0.0F, -5.0F, 3, 3, 4, f); - } + /** main box for the dingo head */ + public ModelRenderer dingoHeadMain; + /** The dingo's body */ + public ModelRenderer dingoBody; + /** dingo'se first leg */ + public ModelRenderer dingoLeg1; + /** dingo's second leg */ + public ModelRenderer dingoLeg2; + /** dingo's third leg */ + public ModelRenderer dingoLeg3; + /** dingo's fourth leg */ + public ModelRenderer dingoLeg4; + /** The dingo's tail */ + ModelRenderer dingoTail; + /** The dingo's mane */ + ModelRenderer dingoMane; - /** - * Sets the models various rotation angles then renders the model. - */ - public void render(Entity p_78088_1_, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, - float p_78088_6_, float p_78088_7_) { - super.render(p_78088_1_, p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_); - this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); + public ModelDingo() { + float f = 0.0F; + float f1 = 13.5F; + this.dingoHeadMain = new ModelRenderer(this, 0, 0); + this.dingoHeadMain.addBox(-3.0F, -3.0F, -2.0F, 6, 6, 4, f); + this.dingoHeadMain.setRotationPoint(-1.0F, f1, -7.0F); + this.dingoBody = new ModelRenderer(this, 18, 14); + this.dingoBody.addBox(-4.0F, -2.0F, -3.0F, 6, 9, 6, f); + this.dingoBody.setRotationPoint(0.0F, 14.0F, 2.0F); + this.dingoMane = new ModelRenderer(this, 21, 0); + this.dingoMane.addBox(-4.0F, -3.0F, -3.0F, 8, 6, 7, f); + this.dingoMane.setRotationPoint(-1.0F, 14.0F, 2.0F); + this.dingoLeg1 = new ModelRenderer(this, 0, 18); + this.dingoLeg1.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); + this.dingoLeg1.setRotationPoint(-2.5F, 16.0F, 7.0F); + this.dingoLeg2 = new ModelRenderer(this, 0, 18); + this.dingoLeg2.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); + this.dingoLeg2.setRotationPoint(0.5F, 16.0F, 7.0F); + this.dingoLeg3 = new ModelRenderer(this, 0, 18); + this.dingoLeg3.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); + this.dingoLeg3.setRotationPoint(-2.5F, 16.0F, -4.0F); + this.dingoLeg4 = new ModelRenderer(this, 0, 18); + this.dingoLeg4.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); + this.dingoLeg4.setRotationPoint(0.5F, 16.0F, -4.0F); + this.dingoTail = new ModelRenderer(this, 9, 18); + this.dingoTail.addBox(-1.0F, 0.0F, -1.0F, 2, 8, 2, f); + this.dingoTail.setRotationPoint(-1.0F, 12.0F, 8.0F); + this.dingoHeadMain.setTextureOffset(16, 14).addBox(-3.0F, -5.0F, 0.0F, 2, 2, 1, f); + this.dingoHeadMain.setTextureOffset(16, 14).addBox(1.0F, -5.0F, 0.0F, 2, 2, 1, f); + this.dingoHeadMain.setTextureOffset(0, 10).addBox(-1.5F, 0.0F, -5.0F, 3, 3, 4, f); + } - if (this.isChild) { - float f6 = 2.0F; - GL11.glPushMatrix(); - GL11.glTranslatef(0.0F, 5.0F * p_78088_7_, 2.0F * p_78088_7_); - this.dingoHeadMain.renderWithRotation(p_78088_7_); - GL11.glPopMatrix(); - GL11.glPushMatrix(); - GL11.glScalef(1.0F / f6, 1.0F / f6, 1.0F / f6); - GL11.glTranslatef(0.0F, 24.0F * p_78088_7_, 0.0F); - this.dingoBody.render(p_78088_7_); - this.dingoLeg1.render(p_78088_7_); - this.dingoLeg2.render(p_78088_7_); - this.dingoLeg3.render(p_78088_7_); - this.dingoLeg4.render(p_78088_7_); - this.dingoTail.renderWithRotation(p_78088_7_); - this.dingoMane.render(p_78088_7_); - GL11.glPopMatrix(); - } else { - this.dingoHeadMain.renderWithRotation(p_78088_7_); - this.dingoBody.render(p_78088_7_); - this.dingoLeg1.render(p_78088_7_); - this.dingoLeg2.render(p_78088_7_); - this.dingoLeg3.render(p_78088_7_); - this.dingoLeg4.render(p_78088_7_); - this.dingoTail.renderWithRotation(p_78088_7_); - this.dingoMane.render(p_78088_7_); - } - } + /** + * Sets the models various rotation angles then renders the model. + */ + public void render( + Entity p_78088_1_, + float p_78088_2_, + float p_78088_3_, + float p_78088_4_, + float p_78088_5_, + float p_78088_6_, + float p_78088_7_) { + super.render(p_78088_1_, p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_); + this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); - /** - * 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. - */ - public void setLivingAnimations(EntityLivingBase p_78086_1_, float p_78086_2_, float p_78086_3_, float p_78086_4_) { - EntityWolf entitydingo = (EntityWolf) p_78086_1_; + if (this.isChild) { + float f6 = 2.0F; + GL11.glPushMatrix(); + GL11.glTranslatef(0.0F, 5.0F * p_78088_7_, 2.0F * p_78088_7_); + this.dingoHeadMain.renderWithRotation(p_78088_7_); + GL11.glPopMatrix(); + GL11.glPushMatrix(); + GL11.glScalef(1.0F / f6, 1.0F / f6, 1.0F / f6); + GL11.glTranslatef(0.0F, 24.0F * p_78088_7_, 0.0F); + this.dingoBody.render(p_78088_7_); + this.dingoLeg1.render(p_78088_7_); + this.dingoLeg2.render(p_78088_7_); + this.dingoLeg3.render(p_78088_7_); + this.dingoLeg4.render(p_78088_7_); + this.dingoTail.renderWithRotation(p_78088_7_); + this.dingoMane.render(p_78088_7_); + GL11.glPopMatrix(); + } else { + this.dingoHeadMain.renderWithRotation(p_78088_7_); + this.dingoBody.render(p_78088_7_); + this.dingoLeg1.render(p_78088_7_); + this.dingoLeg2.render(p_78088_7_); + this.dingoLeg3.render(p_78088_7_); + this.dingoLeg4.render(p_78088_7_); + this.dingoTail.renderWithRotation(p_78088_7_); + this.dingoMane.render(p_78088_7_); + } + } - if (entitydingo.isAngry()) { - this.dingoTail.rotateAngleY = 0.0F; - } else { - this.dingoTail.rotateAngleY = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; - } + /** + * 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. + */ + public void setLivingAnimations(EntityLivingBase p_78086_1_, float p_78086_2_, float p_78086_3_, float p_78086_4_) { + EntityWolf entitydingo = (EntityWolf) p_78086_1_; - if (entitydingo.isSitting()) { - this.dingoMane.setRotationPoint(-1.0F, 16.0F, -3.0F); - this.dingoMane.rotateAngleX = ((float) Math.PI * 2F / 5F); - this.dingoMane.rotateAngleY = 0.0F; - this.dingoBody.setRotationPoint(0.0F, 18.0F, 0.0F); - this.dingoBody.rotateAngleX = ((float) Math.PI / 4F); - this.dingoTail.setRotationPoint(-1.0F, 21.0F, 6.0F); - this.dingoLeg1.setRotationPoint(-2.5F, 22.0F, 2.0F); - this.dingoLeg1.rotateAngleX = ((float) Math.PI * 3F / 2F); - this.dingoLeg2.setRotationPoint(0.5F, 22.0F, 2.0F); - this.dingoLeg2.rotateAngleX = ((float) Math.PI * 3F / 2F); - this.dingoLeg3.rotateAngleX = 5.811947F; - this.dingoLeg3.setRotationPoint(-2.49F, 17.0F, -4.0F); - this.dingoLeg4.rotateAngleX = 5.811947F; - this.dingoLeg4.setRotationPoint(0.51F, 17.0F, -4.0F); - } else { - this.dingoBody.setRotationPoint(0.0F, 14.0F, 2.0F); - this.dingoBody.rotateAngleX = ((float) Math.PI / 2F); - this.dingoMane.setRotationPoint(-1.0F, 14.0F, -3.0F); - this.dingoMane.rotateAngleX = this.dingoBody.rotateAngleX; - this.dingoTail.setRotationPoint(-1.0F, 12.0F, 8.0F); - this.dingoLeg1.setRotationPoint(-2.5F, 16.0F, 7.0F); - this.dingoLeg2.setRotationPoint(0.5F, 16.0F, 7.0F); - this.dingoLeg3.setRotationPoint(-2.5F, 16.0F, -4.0F); - this.dingoLeg4.setRotationPoint(0.5F, 16.0F, -4.0F); - this.dingoLeg1.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; - this.dingoLeg2.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F + (float) Math.PI) * 1.4F * p_78086_3_; - this.dingoLeg3.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F + (float) Math.PI) * 1.4F * p_78086_3_; - this.dingoLeg4.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; - } + if (entitydingo.isAngry()) { + this.dingoTail.rotateAngleY = 0.0F; + } else { + this.dingoTail.rotateAngleY = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; + } - this.dingoHeadMain.rotateAngleZ = entitydingo.getInterestedAngle(p_78086_4_) - + entitydingo.getShakeAngle(p_78086_4_, 0.0F); - this.dingoMane.rotateAngleZ = entitydingo.getShakeAngle(p_78086_4_, -0.08F); - this.dingoBody.rotateAngleZ = entitydingo.getShakeAngle(p_78086_4_, -0.16F); - this.dingoTail.rotateAngleZ = entitydingo.getShakeAngle(p_78086_4_, -0.2F); - } + if (entitydingo.isSitting()) { + this.dingoMane.setRotationPoint(-1.0F, 16.0F, -3.0F); + this.dingoMane.rotateAngleX = ((float) Math.PI * 2F / 5F); + this.dingoMane.rotateAngleY = 0.0F; + this.dingoBody.setRotationPoint(0.0F, 18.0F, 0.0F); + this.dingoBody.rotateAngleX = ((float) Math.PI / 4F); + this.dingoTail.setRotationPoint(-1.0F, 21.0F, 6.0F); + this.dingoLeg1.setRotationPoint(-2.5F, 22.0F, 2.0F); + this.dingoLeg1.rotateAngleX = ((float) Math.PI * 3F / 2F); + this.dingoLeg2.setRotationPoint(0.5F, 22.0F, 2.0F); + this.dingoLeg2.rotateAngleX = ((float) Math.PI * 3F / 2F); + this.dingoLeg3.rotateAngleX = 5.811947F; + this.dingoLeg3.setRotationPoint(-2.49F, 17.0F, -4.0F); + this.dingoLeg4.rotateAngleX = 5.811947F; + this.dingoLeg4.setRotationPoint(0.51F, 17.0F, -4.0F); + } else { + this.dingoBody.setRotationPoint(0.0F, 14.0F, 2.0F); + this.dingoBody.rotateAngleX = ((float) Math.PI / 2F); + this.dingoMane.setRotationPoint(-1.0F, 14.0F, -3.0F); + this.dingoMane.rotateAngleX = this.dingoBody.rotateAngleX; + this.dingoTail.setRotationPoint(-1.0F, 12.0F, 8.0F); + this.dingoLeg1.setRotationPoint(-2.5F, 16.0F, 7.0F); + this.dingoLeg2.setRotationPoint(0.5F, 16.0F, 7.0F); + this.dingoLeg3.setRotationPoint(-2.5F, 16.0F, -4.0F); + this.dingoLeg4.setRotationPoint(0.5F, 16.0F, -4.0F); + this.dingoLeg1.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; + this.dingoLeg2.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F + (float) Math.PI) * 1.4F * p_78086_3_; + this.dingoLeg3.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F + (float) Math.PI) * 1.4F * p_78086_3_; + this.dingoLeg4.rotateAngleX = MathHelper.cos(p_78086_2_ * 0.6662F) * 1.4F * p_78086_3_; + } - /** - * Sets the model's various rotation angles. For bipeds, par1 and par2 are used - * for animating the movement of arms and legs, where par1 represents the - * time(so that arms and legs swing back and forth) and par2 represents how - * "far" arms and legs can swing at most. - */ - public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, - float p_78087_5_, float p_78087_6_, Entity p_78087_7_) { - super.setRotationAngles(p_78087_1_, p_78087_2_, p_78087_3_, p_78087_4_, p_78087_5_, p_78087_6_, p_78087_7_); - this.dingoHeadMain.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI); - this.dingoHeadMain.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI); - this.dingoTail.rotateAngleX = p_78087_3_; - } - -}
\ No newline at end of file + this.dingoHeadMain.rotateAngleZ = + entitydingo.getInterestedAngle(p_78086_4_) + entitydingo.getShakeAngle(p_78086_4_, 0.0F); + this.dingoMane.rotateAngleZ = entitydingo.getShakeAngle(p_78086_4_, -0.08F); + this.dingoBody.rotateAngleZ = entitydingo.getShakeAngle(p_78086_4_, -0.16F); + this.dingoTail.rotateAngleZ = entitydingo.getShakeAngle(p_78086_4_, -0.2F); + } + + /** + * Sets the model's various rotation angles. For bipeds, par1 and par2 are used + * for animating the movement of arms and legs, where par1 represents the + * time(so that arms and legs swing back and forth) and par2 represents how + * "far" arms and legs can swing at most. + */ + public void setRotationAngles( + float p_78087_1_, + float p_78087_2_, + float p_78087_3_, + float p_78087_4_, + float p_78087_5_, + float p_78087_6_, + Entity p_78087_7_) { + super.setRotationAngles(p_78087_1_, p_78087_2_, p_78087_3_, p_78087_4_, p_78087_5_, p_78087_6_, p_78087_7_); + this.dingoHeadMain.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI); + this.dingoHeadMain.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI); + this.dingoTail.rotateAngleX = p_78087_3_; + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/model/ModelOctopus.java b/src/main/java/gtPlusPlus/australia/entity/model/ModelOctopus.java index f820d0ad85..aaec9f8dc4 100644 --- a/src/main/java/gtPlusPlus/australia/entity/model/ModelOctopus.java +++ b/src/main/java/gtPlusPlus/australia/entity/model/ModelOctopus.java @@ -8,60 +8,71 @@ import net.minecraft.entity.Entity; @SideOnly(Side.CLIENT) public class ModelOctopus extends ModelBase { - - /** The squid's body */ - ModelRenderer octopusBody; - /** The squid's tentacles */ - ModelRenderer[] octoTentacles = new ModelRenderer[8]; - public ModelOctopus() { - byte b0 = -16; - this.octopusBody = new ModelRenderer(this, 0, 0); - this.octopusBody.addBox(-6.0F, -8.0F, -6.0F, 12, 16, 12); - this.octopusBody.rotationPointY += (float) (24 + b0); + /** The squid's body */ + ModelRenderer octopusBody; + /** The squid's tentacles */ + ModelRenderer[] octoTentacles = new ModelRenderer[8]; - for (int i = 0; i < this.octoTentacles.length; ++i) { - this.octoTentacles[i] = new ModelRenderer(this, 48, 0); - double d0 = (double) i * Math.PI * 2.0D / (double) this.octoTentacles.length; - float f = (float) Math.cos(d0) * 5.0F; - float f1 = (float) Math.sin(d0) * 5.0F; - this.octoTentacles[i].addBox(-1.0F, 0.0F, -1.0F, 2, 18, 2); - this.octoTentacles[i].rotationPointX = f; - this.octoTentacles[i].rotationPointZ = f1; - this.octoTentacles[i].rotationPointY = (float) (31 + b0); - d0 = (double) i * Math.PI * -2.0D / (double) this.octoTentacles.length + (Math.PI / 2D); - this.octoTentacles[i].rotateAngleY = (float) d0; - } - } + public ModelOctopus() { + byte b0 = -16; + this.octopusBody = new ModelRenderer(this, 0, 0); + this.octopusBody.addBox(-6.0F, -8.0F, -6.0F, 12, 16, 12); + this.octopusBody.rotationPointY += (float) (24 + b0); - /** - * Sets the model's various rotation angles. For bipeds, par1 and par2 are used - * for animating the movement of arms and legs, where par1 represents the - * time(so that arms and legs swing back and forth) and par2 represents how - * "far" arms and legs can swing at most. - */ - public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, - float p_78087_5_, float p_78087_6_, Entity p_78087_7_) { - ModelRenderer[] amodelrenderer = this.octoTentacles; - int i = amodelrenderer.length; + for (int i = 0; i < this.octoTentacles.length; ++i) { + this.octoTentacles[i] = new ModelRenderer(this, 48, 0); + double d0 = (double) i * Math.PI * 2.0D / (double) this.octoTentacles.length; + float f = (float) Math.cos(d0) * 5.0F; + float f1 = (float) Math.sin(d0) * 5.0F; + this.octoTentacles[i].addBox(-1.0F, 0.0F, -1.0F, 2, 18, 2); + this.octoTentacles[i].rotationPointX = f; + this.octoTentacles[i].rotationPointZ = f1; + this.octoTentacles[i].rotationPointY = (float) (31 + b0); + d0 = (double) i * Math.PI * -2.0D / (double) this.octoTentacles.length + (Math.PI / 2D); + this.octoTentacles[i].rotateAngleY = (float) d0; + } + } - for (int j = 0; j < i; ++j) { - ModelRenderer modelrenderer = amodelrenderer[j]; - modelrenderer.rotateAngleX = p_78087_3_; - } - } + /** + * Sets the model's various rotation angles. For bipeds, par1 and par2 are used + * for animating the movement of arms and legs, where par1 represents the + * time(so that arms and legs swing back and forth) and par2 represents how + * "far" arms and legs can swing at most. + */ + public void setRotationAngles( + float p_78087_1_, + float p_78087_2_, + float p_78087_3_, + float p_78087_4_, + float p_78087_5_, + float p_78087_6_, + Entity p_78087_7_) { + ModelRenderer[] amodelrenderer = this.octoTentacles; + int i = amodelrenderer.length; - /** - * Sets the models various rotation angles then renders the model. - */ - public void render(Entity p_78088_1_, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, - float p_78088_6_, float p_78088_7_) { - this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); - this.octopusBody.render(p_78088_7_); + for (int j = 0; j < i; ++j) { + ModelRenderer modelrenderer = amodelrenderer[j]; + modelrenderer.rotateAngleX = p_78087_3_; + } + } - for (int i = 0; i < this.octoTentacles.length; ++i) { - this.octoTentacles[i].render(p_78088_7_); - } - } - -}
\ No newline at end of file + /** + * Sets the models various rotation angles then renders the model. + */ + public void render( + Entity p_78088_1_, + float p_78088_2_, + float p_78088_3_, + float p_78088_4_, + float p_78088_5_, + float p_78088_6_, + float p_78088_7_) { + this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, p_78088_7_, p_78088_1_); + this.octopusBody.render(p_78088_7_); + + for (int i = 0; i < this.octoTentacles.length; ++i) { + this.octoTentacles[i].render(p_78088_7_); + } + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/render/RenderAustralianSpider.java b/src/main/java/gtPlusPlus/australia/entity/render/RenderAustralianSpider.java index af432e04b9..01b4b8ac4b 100644 --- a/src/main/java/gtPlusPlus/australia/entity/render/RenderAustralianSpider.java +++ b/src/main/java/gtPlusPlus/australia/entity/render/RenderAustralianSpider.java @@ -15,70 +15,70 @@ import org.lwjgl.opengl.GL11; @SideOnly(Side.CLIENT) public class RenderAustralianSpider extends RenderLiving { - private static final ResourceLocation spiderEyesTextures = new ResourceLocation("textures/entity/spider_eyes.png"); - private static final ResourceLocation spiderTextures = new ResourceLocation(CORE.MODID+":"+"textures/entity/australia/bush_spider.png"); + private static final ResourceLocation spiderEyesTextures = new ResourceLocation("textures/entity/spider_eyes.png"); + private static final ResourceLocation spiderTextures = + new ResourceLocation(CORE.MODID + ":" + "textures/entity/australia/bush_spider.png"); - public RenderAustralianSpider() { - super(new ModelAustralianSpider(), 1.0F); - this.setRenderPassModel(new ModelAustralianSpider()); - } + public RenderAustralianSpider() { + super(new ModelAustralianSpider(), 1.0F); + this.setRenderPassModel(new ModelAustralianSpider()); + } - protected float getDeathMaxRotation(EntityAustralianSpiderBase p_77037_1_) { - return 180.0F; - } + protected float getDeathMaxRotation(EntityAustralianSpiderBase p_77037_1_) { + return 180.0F; + } - /** - * Queries whether should render the specified pass or not. - */ - protected int shouldRenderPass(EntityAustralianSpiderBase p_77032_1_, int p_77032_2_, float p_77032_3_) { - if (p_77032_2_ != 0) { - return -1; - } else { - this.bindTexture(spiderEyesTextures); - GL11.glEnable(GL11.GL_BLEND); - GL11.glDisable(GL11.GL_ALPHA_TEST); - GL11.glBlendFunc(GL11.GL_ONE, GL11.GL_ONE); + /** + * Queries whether should render the specified pass or not. + */ + protected int shouldRenderPass(EntityAustralianSpiderBase p_77032_1_, int p_77032_2_, float p_77032_3_) { + if (p_77032_2_ != 0) { + return -1; + } else { + this.bindTexture(spiderEyesTextures); + GL11.glEnable(GL11.GL_BLEND); + GL11.glDisable(GL11.GL_ALPHA_TEST); + GL11.glBlendFunc(GL11.GL_ONE, GL11.GL_ONE); - if (p_77032_1_.isInvisible()) { - GL11.glDepthMask(false); - } else { - GL11.glDepthMask(true); - } + if (p_77032_1_.isInvisible()) { + GL11.glDepthMask(false); + } else { + GL11.glDepthMask(true); + } - char c0 = 61680; - int j = c0 % 65536; - int k = c0 / 65536; - OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float) j / 1.0F, (float) k / 1.0F); - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - return 1; - } - } + char c0 = 61680; + int j = c0 % 65536; + int k = c0 / 65536; + OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float) j / 1.0F, (float) k / 1.0F); + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + return 1; + } + } - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless - * you call Render.bindEntityTexture. - */ - protected ResourceLocation getEntityTexture(EntityAustralianSpiderBase p_110775_1_) { - return spiderTextures; - } + /** + * Returns the location of an entity's texture. Doesn't seem to be called unless + * you call Render.bindEntityTexture. + */ + protected ResourceLocation getEntityTexture(EntityAustralianSpiderBase p_110775_1_) { + return spiderTextures; + } - protected float getDeathMaxRotation(EntityLivingBase p_77037_1_) { - return this.getDeathMaxRotation((EntityAustralianSpiderBase) p_77037_1_); - } + protected float getDeathMaxRotation(EntityLivingBase p_77037_1_) { + return this.getDeathMaxRotation((EntityAustralianSpiderBase) p_77037_1_); + } - /** - * Queries whether should render the specified pass or not. - */ - protected int shouldRenderPass(EntityLivingBase p_77032_1_, int p_77032_2_, float p_77032_3_) { - return this.shouldRenderPass((EntityAustralianSpiderBase) p_77032_1_, p_77032_2_, p_77032_3_); - } + /** + * Queries whether should render the specified pass or not. + */ + protected int shouldRenderPass(EntityLivingBase p_77032_1_, int p_77032_2_, float p_77032_3_) { + return this.shouldRenderPass((EntityAustralianSpiderBase) p_77032_1_, p_77032_2_, p_77032_3_); + } - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless - * you call Render.bindEntityTexture. - */ - protected ResourceLocation getEntityTexture(Entity p_110775_1_) { - return this.getEntityTexture((EntityAustralianSpiderBase) p_110775_1_); - } - -}
\ No newline at end of file + /** + * Returns the location of an entity's texture. Doesn't seem to be called unless + * you call Render.bindEntityTexture. + */ + protected ResourceLocation getEntityTexture(Entity p_110775_1_) { + return this.getEntityTexture((EntityAustralianSpiderBase) p_110775_1_); + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/render/RenderBoar.java b/src/main/java/gtPlusPlus/australia/entity/render/RenderBoar.java index cc4bfa8906..c3a730492c 100644 --- a/src/main/java/gtPlusPlus/australia/entity/render/RenderBoar.java +++ b/src/main/java/gtPlusPlus/australia/entity/render/RenderBoar.java @@ -11,13 +11,13 @@ import net.minecraft.entity.EntityLivingBase; import net.minecraft.util.ResourceLocation; @SideOnly(Side.CLIENT) -public class RenderBoar extends RenderLiving -{ - private static final ResourceLocation saddledBoarTextures = new ResourceLocation("textures/entity/boar/boar_saddle.png"); - private static final ResourceLocation boarTextures = new ResourceLocation(CORE.MODID+":"+"textures/entity/australia/boar.png"); +public class RenderBoar extends RenderLiving { + private static final ResourceLocation saddledBoarTextures = + new ResourceLocation("textures/entity/boar/boar_saddle.png"); + private static final ResourceLocation boarTextures = + new ResourceLocation(CORE.MODID + ":" + "textures/entity/australia/boar.png"); - public RenderBoar(ModelBase p_i1265_1_, ModelBase p_i1265_2_, float p_i1265_3_) - { + public RenderBoar(ModelBase p_i1265_1_, ModelBase p_i1265_2_, float p_i1265_3_) { super(p_i1265_1_, p_i1265_3_); this.setRenderPassModel(p_i1265_2_); } @@ -25,15 +25,11 @@ public class RenderBoar extends RenderLiving /** * Queries whether should render the specified pass or not. */ - protected int shouldRenderPass(EntityBoar p_77032_1_, int p_77032_2_, float p_77032_3_) - { - if (p_77032_2_ == 0 && p_77032_1_.getSaddled()) - { + protected int shouldRenderPass(EntityBoar p_77032_1_, int p_77032_2_, float p_77032_3_) { + if (p_77032_2_ == 0 && p_77032_1_.getSaddled()) { this.bindTexture(saddledBoarTextures); return 1; - } - else - { + } else { return -1; } } @@ -41,24 +37,21 @@ public class RenderBoar extends RenderLiving /** * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture. */ - protected ResourceLocation getEntityTexture(EntityBoar p_110775_1_) - { + protected ResourceLocation getEntityTexture(EntityBoar p_110775_1_) { return boarTextures; } /** * Queries whether should render the specified pass or not. */ - protected int shouldRenderPass(EntityLivingBase p_77032_1_, int p_77032_2_, float p_77032_3_) - { - return this.shouldRenderPass((EntityBoar)p_77032_1_, p_77032_2_, p_77032_3_); + protected int shouldRenderPass(EntityLivingBase p_77032_1_, int p_77032_2_, float p_77032_3_) { + return this.shouldRenderPass((EntityBoar) p_77032_1_, p_77032_2_, p_77032_3_); } /** * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture. */ - protected ResourceLocation getEntityTexture(Entity p_110775_1_) - { - return this.getEntityTexture((EntityBoar)p_110775_1_); + protected ResourceLocation getEntityTexture(Entity p_110775_1_) { + return this.getEntityTexture((EntityBoar) p_110775_1_); } -}
\ No newline at end of file +} diff --git a/src/main/java/gtPlusPlus/australia/entity/render/RenderDingo.java b/src/main/java/gtPlusPlus/australia/entity/render/RenderDingo.java index 8bbf0392cd..37511355e6 100644 --- a/src/main/java/gtPlusPlus/australia/entity/render/RenderDingo.java +++ b/src/main/java/gtPlusPlus/australia/entity/render/RenderDingo.java @@ -15,76 +15,78 @@ import org.lwjgl.opengl.GL11; @SideOnly(Side.CLIENT) public class RenderDingo extends RenderLiving { - private static final ResourceLocation dingoTextures = new ResourceLocation( - CORE.MODID + ":" + "textures/entity/australia/dingo/dingo.png"); - private static final ResourceLocation tamedDingoTextures = new ResourceLocation( - CORE.MODID + ":" + "textures/entity/australia/dingo/wdingo_tame.png"); - private static final ResourceLocation anrgyDingoTextures = new ResourceLocation( - CORE.MODID + ":" + "textures/entity/australia/dingo/dingo_angry.png"); - private static final ResourceLocation dingoCollarTextures = new ResourceLocation( - CORE.MODID + ":" + "textures/entity/australia/wdingoolf/dingo_collar.png"); + private static final ResourceLocation dingoTextures = + new ResourceLocation(CORE.MODID + ":" + "textures/entity/australia/dingo/dingo.png"); + private static final ResourceLocation tamedDingoTextures = + new ResourceLocation(CORE.MODID + ":" + "textures/entity/australia/dingo/wdingo_tame.png"); + private static final ResourceLocation anrgyDingoTextures = + new ResourceLocation(CORE.MODID + ":" + "textures/entity/australia/dingo/dingo_angry.png"); + private static final ResourceLocation dingoCollarTextures = + new ResourceLocation(CORE.MODID + ":" + "textures/entity/australia/wdingoolf/dingo_collar.png"); - public RenderDingo(ModelBase p_i1269_1_, ModelBase p_i1269_2_, float p_i1269_3_) { - super(p_i1269_1_, p_i1269_3_); - this.setRenderPassModel(p_i1269_2_); - } + public RenderDingo(ModelBase p_i1269_1_, ModelBase p_i1269_2_, float p_i1269_3_) { + super(p_i1269_1_, p_i1269_3_); + this.setRenderPassModel(p_i1269_2_); + } - /** - * Defines what float the third param in setRotationAngles of ModelBase is - */ - protected float handleRotationFloat(EntityDingo p_77044_1_, float p_77044_2_) { - return p_77044_1_.getTailRotation(); - } + /** + * Defines what float the third param in setRotationAngles of ModelBase is + */ + protected float handleRotationFloat(EntityDingo p_77044_1_, float p_77044_2_) { + return p_77044_1_.getTailRotation(); + } - /** - * Queries whether should render the specified pass or not. - */ - protected int shouldRenderPass(EntityDingo p_77032_1_, int p_77032_2_, float p_77032_3_) { - if (p_77032_2_ == 0 && p_77032_1_.getWolfShaking()) { - float f1 = p_77032_1_.getBrightness(p_77032_3_) * p_77032_1_.getShadingWhileShaking(p_77032_3_); - this.bindTexture(dingoTextures); - GL11.glColor3f(f1, f1, f1); - return 1; - } else if (p_77032_2_ == 1 && p_77032_1_.isTamed()) { - this.bindTexture(dingoCollarTextures); - int j = p_77032_1_.getCollarColor(); - GL11.glColor3f(EntitySheep.fleeceColorTable[j][0], EntitySheep.fleeceColorTable[j][1], - EntitySheep.fleeceColorTable[j][2]); - return 1; - } else { - return -1; - } - } + /** + * Queries whether should render the specified pass or not. + */ + protected int shouldRenderPass(EntityDingo p_77032_1_, int p_77032_2_, float p_77032_3_) { + if (p_77032_2_ == 0 && p_77032_1_.getWolfShaking()) { + float f1 = p_77032_1_.getBrightness(p_77032_3_) * p_77032_1_.getShadingWhileShaking(p_77032_3_); + this.bindTexture(dingoTextures); + GL11.glColor3f(f1, f1, f1); + return 1; + } else if (p_77032_2_ == 1 && p_77032_1_.isTamed()) { + this.bindTexture(dingoCollarTextures); + int j = p_77032_1_.getCollarColor(); + GL11.glColor3f( + EntitySheep.fleeceColorTable[j][0], + EntitySheep.fleeceColorTable[j][1], + EntitySheep.fleeceColorTable[j][2]); + return 1; + } else { + return -1; + } + } - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless - * you call Render.bindEntityTexture. - */ - protected ResourceLocation getEntityTexture(EntityDingo p_110775_1_) { - return p_110775_1_.isTamed() ? tamedDingoTextures - : (p_110775_1_.isAngry() ? anrgyDingoTextures : dingoTextures); - } + /** + * Returns the location of an entity's texture. Doesn't seem to be called unless + * you call Render.bindEntityTexture. + */ + protected ResourceLocation getEntityTexture(EntityDingo p_110775_1_) { + return p_110775_1_.isTamed() + ? tamedDingoTextures + : (p_110775_1_.isAngry() ? anrgyDingoTextures : dingoTextures); + } - /** - * Queries whether should render the specified pass or not. - */ - protected int shouldRenderPass(EntityLivingBase p_77032_1_, int p_77032_2_, float p_77032_3_) { - return this.shouldRenderPass((EntityDingo) p_77032_1_, p_77032_2_, p_77032_3_); - } + /** + * Queries whether should render the specified pass or not. + */ + protected int shouldRenderPass(EntityLivingBase p_77032_1_, int p_77032_2_, float p_77032_3_) { + return this.shouldRenderPass((EntityDingo) p_77032_1_, p_77032_2_, p_77032_3_); + } - /** - * Defines what float the third param in setRotationAngles of ModelBase is - */ - protected float handleRotationFloat(EntityLivingBase p_77044_1_, float p_77044_2_) { - return this.handleRotationFloat((EntityDingo) p_77044_1_, p_77044_2_); - } + /** + * Defines what float the third param in setRotationAngles of ModelBase is + */ + protected float handleRotationFloat(EntityLivingBase p_77044_1_, float p_77044_2_) { + return this.handleRotationFloat((EntityDingo) p_77044_1_, p_77044_2_); + } - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless - * you call Render.bindEntityTexture. - */ - protected ResourceLocation getEntityTexture(Entity p_110775_1_) { - return this.getEntityTexture((EntityDingo) p_110775_1_); - } - -}
\ No newline at end of file + /** + * Returns the location of an entity's texture. Doesn't seem to be called unless + * you call Render.bindEntityTexture. + */ + protected ResourceLocation getEntityTexture(Entity p_110775_1_) { + return this.getEntityTexture((EntityDingo) p_110775_1_); + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/render/RenderOctopus.java b/src/main/java/gtPlusPlus/australia/entity/render/RenderOctopus.java index 592ef9391a..89888140f2 100644 --- a/src/main/java/gtPlusPlus/australia/entity/render/RenderOctopus.java +++ b/src/main/java/gtPlusPlus/australia/entity/render/RenderOctopus.java @@ -14,107 +14,127 @@ import org.lwjgl.opengl.GL11; @SideOnly(Side.CLIENT) public class RenderOctopus extends RenderLiving { - - private static final ResourceLocation octopusTextures = new ResourceLocation(CORE.MODID+":"+"textures/entity/australia/octopus.png"); - public RenderOctopus(ModelBase p_i1268_1_, float p_i1268_2_) { - super(p_i1268_1_, p_i1268_2_); - } + private static final ResourceLocation octopusTextures = + new ResourceLocation(CORE.MODID + ":" + "textures/entity/australia/octopus.png"); - /** - * Actually renders the given argument. This is a synthetic bridge method, - * always casting down its argument and then handing it off to a worker function - * which does the actual work. In all probabilty, the class Render is generic - * (Render<T extends Entity) and this method has signature public void - * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). - * But JAD is pre 1.5 so doesn't do that. - */ - public void doRender(EntityOctopus p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, - float p_76986_8_, float p_76986_9_) { - super.doRender((EntityLiving) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); - } + public RenderOctopus(ModelBase p_i1268_1_, float p_i1268_2_) { + super(p_i1268_1_, p_i1268_2_); + } - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless - * you call Render.bindEntityTexture. - */ - protected ResourceLocation getEntityTexture(EntityOctopus p_110775_1_) { - return octopusTextures; - } + /** + * Actually renders the given argument. This is a synthetic bridge method, + * always casting down its argument and then handing it off to a worker function + * which does the actual work. In all probabilty, the class Render is generic + * (Render<T extends Entity) and this method has signature public void + * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). + * But JAD is pre 1.5 so doesn't do that. + */ + public void doRender( + EntityOctopus p_76986_1_, + double p_76986_2_, + double p_76986_4_, + double p_76986_6_, + float p_76986_8_, + float p_76986_9_) { + super.doRender((EntityLiving) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); + } - protected void rotateCorpse(EntityOctopus p_77043_1_, float p_77043_2_, float p_77043_3_, float p_77043_4_) { - float f3 = p_77043_1_.prevSquidPitch + (p_77043_1_.octopusPitch - p_77043_1_.prevSquidPitch) * p_77043_4_; - float f4 = p_77043_1_.prevSquidYaw + (p_77043_1_.octopusYaw - p_77043_1_.prevSquidYaw) * p_77043_4_; - GL11.glTranslatef(0.0F, 0.5F, 0.0F); - GL11.glRotatef(180.0F - p_77043_3_, 0.0F, 1.0F, 0.0F); - GL11.glRotatef(f3, 1.0F, 0.0F, 0.0F); - GL11.glRotatef(f4, 0.0F, 1.0F, 0.0F); - GL11.glTranslatef(0.0F, -1.2F, 0.0F); - } + /** + * Returns the location of an entity's texture. Doesn't seem to be called unless + * you call Render.bindEntityTexture. + */ + protected ResourceLocation getEntityTexture(EntityOctopus p_110775_1_) { + return octopusTextures; + } - /** - * Defines what float the third param in setRotationAngles of ModelBase is - */ - protected float handleRotationFloat(EntityOctopus p_77044_1_, float p_77044_2_) { - return p_77044_1_.lastTentacleAngle + (p_77044_1_.tentacleAngle - p_77044_1_.lastTentacleAngle) * p_77044_2_; - } + protected void rotateCorpse(EntityOctopus p_77043_1_, float p_77043_2_, float p_77043_3_, float p_77043_4_) { + float f3 = p_77043_1_.prevSquidPitch + (p_77043_1_.octopusPitch - p_77043_1_.prevSquidPitch) * p_77043_4_; + float f4 = p_77043_1_.prevSquidYaw + (p_77043_1_.octopusYaw - p_77043_1_.prevSquidYaw) * p_77043_4_; + GL11.glTranslatef(0.0F, 0.5F, 0.0F); + GL11.glRotatef(180.0F - p_77043_3_, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(f3, 1.0F, 0.0F, 0.0F); + GL11.glRotatef(f4, 0.0F, 1.0F, 0.0F); + GL11.glTranslatef(0.0F, -1.2F, 0.0F); + } - /** - * Actually renders the given argument. This is a synthetic bridge method, - * always casting down its argument and then handing it off to a worker function - * which does the actual work. In all probabilty, the class Render is generic - * (Render<T extends Entity) and this method has signature public void - * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). - * But JAD is pre 1.5 so doesn't do that. - */ - 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.doRender((EntityOctopus) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); - } + /** + * Defines what float the third param in setRotationAngles of ModelBase is + */ + protected float handleRotationFloat(EntityOctopus p_77044_1_, float p_77044_2_) { + return p_77044_1_.lastTentacleAngle + (p_77044_1_.tentacleAngle - p_77044_1_.lastTentacleAngle) * p_77044_2_; + } - /** - * Defines what float the third param in setRotationAngles of ModelBase is - */ - protected float handleRotationFloat(EntityLivingBase p_77044_1_, float p_77044_2_) { - return this.handleRotationFloat((EntityOctopus) p_77044_1_, p_77044_2_); - } + /** + * Actually renders the given argument. This is a synthetic bridge method, + * always casting down its argument and then handing it off to a worker function + * which does the actual work. In all probabilty, the class Render is generic + * (Render<T extends Entity) and this method has signature public void + * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). + * But JAD is pre 1.5 so doesn't do that. + */ + 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.doRender((EntityOctopus) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); + } - protected void rotateCorpse(EntityLivingBase p_77043_1_, float p_77043_2_, float p_77043_3_, float p_77043_4_) { - this.rotateCorpse((EntityOctopus) p_77043_1_, p_77043_2_, p_77043_3_, p_77043_4_); - } + /** + * Defines what float the third param in setRotationAngles of ModelBase is + */ + protected float handleRotationFloat(EntityLivingBase p_77044_1_, float p_77044_2_) { + return this.handleRotationFloat((EntityOctopus) p_77044_1_, p_77044_2_); + } - /** - * Actually renders the given argument. This is a synthetic bridge method, - * always casting down its argument and then handing it off to a worker function - * which does the actual work. In all probabilty, the class Render is generic - * (Render<T extends Entity) and this method has signature public void - * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). - * But JAD is pre 1.5 so doesn't do that. - */ - 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.doRender((EntityOctopus) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); - } + protected void rotateCorpse(EntityLivingBase p_77043_1_, float p_77043_2_, float p_77043_3_, float p_77043_4_) { + this.rotateCorpse((EntityOctopus) p_77043_1_, p_77043_2_, p_77043_3_, p_77043_4_); + } - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless - * you call Render.bindEntityTexture. - */ - protected ResourceLocation getEntityTexture(Entity p_110775_1_) { - return this.getEntityTexture((EntityOctopus) p_110775_1_); - } + /** + * Actually renders the given argument. This is a synthetic bridge method, + * always casting down its argument and then handing it off to a worker function + * which does the actual work. In all probabilty, the class Render is generic + * (Render<T extends Entity) and this method has signature public void + * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). + * But JAD is pre 1.5 so doesn't do that. + */ + 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.doRender((EntityOctopus) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); + } - /** - * Actually renders the given argument. This is a synthetic bridge method, - * always casting down its argument and then handing it off to a worker function - * which does the actual work. In all probabilty, the class Render is generic - * (Render<T extends Entity) and this method has signature public void - * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). - * But JAD is pre 1.5 so doesn't do that. - */ - public void doRender(Entity p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, - float p_76986_9_) { - this.doRender((EntityOctopus) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); - } - -}
\ No newline at end of file + /** + * Returns the location of an entity's texture. Doesn't seem to be called unless + * you call Render.bindEntityTexture. + */ + protected ResourceLocation getEntityTexture(Entity p_110775_1_) { + return this.getEntityTexture((EntityOctopus) p_110775_1_); + } + + /** + * Actually renders the given argument. This is a synthetic bridge method, + * always casting down its argument and then handing it off to a worker function + * which does the actual work. In all probabilty, the class Render is generic + * (Render<T extends Entity) and this method has signature public void + * func_76986_a(T entity, double d, double d1, double d2, float f, float f1). + * But JAD is pre 1.5 so doesn't do that. + */ + public void doRender( + Entity p_76986_1_, + double p_76986_2_, + double p_76986_4_, + double p_76986_6_, + float p_76986_8_, + float p_76986_9_) { + this.doRender((EntityOctopus) p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_); + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/type/EntityAustralianSpiderBase.java b/src/main/java/gtPlusPlus/australia/entity/type/EntityAustralianSpiderBase.java index 5aa78203a3..9f4963e2fc 100644 --- a/src/main/java/gtPlusPlus/australia/entity/type/EntityAustralianSpiderBase.java +++ b/src/main/java/gtPlusPlus/australia/entity/type/EntityAustralianSpiderBase.java @@ -11,31 +11,31 @@ import net.minecraft.world.World; public class EntityAustralianSpiderBase extends EntitySpider { - public EntityAustralianSpiderBase(World p_i1732_1_) { - super(p_i1732_1_); - this.setSize(0.7F, 0.5F); - } + public EntityAustralianSpiderBase(World p_i1732_1_) { + super(p_i1732_1_); + this.setSize(0.7F, 0.5F); + } - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(12.0D); - } + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(12.0D); + } - public boolean attackEntityAsMob(Entity p_70652_1_) { - if (super.attackEntityAsMob(p_70652_1_)) { - if (p_70652_1_ instanceof EntityLivingBase) { - byte b0 = 45; - if (b0 > 0) { - ((EntityLivingBase) p_70652_1_).addPotionEffect(new PotionEffect(Potion.poison.id, b0 * 20, 0)); - } - } - return true; - } else { - return false; - } - } + public boolean attackEntityAsMob(Entity p_70652_1_) { + if (super.attackEntityAsMob(p_70652_1_)) { + if (p_70652_1_ instanceof EntityLivingBase) { + byte b0 = 45; + if (b0 > 0) { + ((EntityLivingBase) p_70652_1_).addPotionEffect(new PotionEffect(Potion.poison.id, b0 * 20, 0)); + } + } + return true; + } else { + return false; + } + } - public IEntityLivingData onSpawnWithEgg(IEntityLivingData p_110161_1_) { - return p_110161_1_; - } -}
\ No newline at end of file + public IEntityLivingData onSpawnWithEgg(IEntityLivingData p_110161_1_) { + return p_110161_1_; + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/type/EntityBoar.java b/src/main/java/gtPlusPlus/australia/entity/type/EntityBoar.java index 871b1a5356..fddde70116 100644 --- a/src/main/java/gtPlusPlus/australia/entity/type/EntityBoar.java +++ b/src/main/java/gtPlusPlus/australia/entity/type/EntityBoar.java @@ -7,7 +7,6 @@ import net.minecraft.entity.ai.EntityAIControlledByPlayer; import net.minecraft.entity.ai.EntityAIFollowParent; import net.minecraft.entity.ai.EntityAILookIdle; import net.minecraft.entity.ai.EntityAIMate; -import net.minecraft.entity.ai.EntityAIPanic; import net.minecraft.entity.ai.EntityAISwimming; import net.minecraft.entity.ai.EntityAITempt; import net.minecraft.entity.ai.EntityAIWander; @@ -24,197 +23,198 @@ import net.minecraft.stats.AchievementList; import net.minecraft.world.World; public class EntityBoar extends EntityAnimal { - /** AI task for player control. */ - private final EntityAIControlledByPlayer aiControlledByPlayer; - - public EntityBoar(World p_i1689_1_) { - super(p_i1689_1_); - this.setSize(0.9F, 0.9F); - this.getNavigator().setAvoidsWater(true); - this.tasks.addTask(0, new EntityAISwimming(this)); - //this.tasks.addTask(1, new EntityAIPanic(this, 1.25D)); - this.tasks.addTask(2, this.aiControlledByPlayer = new EntityAIControlledByPlayer(this, 0.3F)); - this.tasks.addTask(3, new EntityAIMate(this, 1.0D)); - this.tasks.addTask(4, new EntityAITempt(this, 1.2D, Items.carrot_on_a_stick, false)); - this.tasks.addTask(4, new EntityAITempt(this, 1.2D, Items.carrot, false)); - this.tasks.addTask(5, new EntityAIFollowParent(this, 1.1D)); - this.tasks.addTask(6, new EntityAIWander(this, 1.0D)); - this.tasks.addTask(7, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F)); - this.tasks.addTask(8, new EntityAILookIdle(this)); - } - - /** - * Returns true if the newer Entity AI code should be run - */ - public boolean isAIEnabled() { - return true; - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(10.0D); - this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.25D); - } - - protected void updateAITasks() { - super.updateAITasks(); - } - - /** - * returns true if all the conditions for steering the entity are met. For pigs, - * this is true if it is being ridden by a player and the player is holding a - * carrot-on-a-stick - */ - public boolean canBeSteered() { - ItemStack itemstack = ((EntityPlayer) this.riddenByEntity).getHeldItem(); - return itemstack != null && itemstack.getItem() == Items.carrot_on_a_stick; - } - - protected void entityInit() { - super.entityInit(); - this.dataWatcher.addObject(16, Byte.valueOf((byte) 0)); - } - - /** - * (abstract) Protected helper method to write subclass entity data to NBT. - */ - public void writeEntityToNBT(NBTTagCompound p_70014_1_) { - super.writeEntityToNBT(p_70014_1_); - p_70014_1_.setBoolean("Saddle", this.getSaddled()); - } - - /** - * (abstract) Protected helper method to read subclass entity data from NBT. - */ - public void readEntityFromNBT(NBTTagCompound p_70037_1_) { - super.readEntityFromNBT(p_70037_1_); - this.setSaddled(p_70037_1_.getBoolean("Saddle")); - } - - /** - * Returns the sound this mob makes while it's alive. - */ - protected String getLivingSound() { - return "mob.pig.say"; - } - - /** - * Returns the sound this mob makes when it is hurt. - */ - protected String getHurtSound() { - return "mob.pig.say"; - } - - /** - * Returns the sound this mob makes on death. - */ - protected String getDeathSound() { - return "mob.pig.death"; - } - - protected void func_145780_a(int p_145780_1_, int p_145780_2_, int p_145780_3_, Block p_145780_4_) { - this.playSound("mob.pig.step", 0.15F, 1.0F); - } - - /** - * Called when a player interacts with a mob. e.g. gets milk from a cow, gets - * into the saddle on a pig. - */ - public boolean interact(EntityPlayer p_70085_1_) { - if (super.interact(p_70085_1_)) { - return true; - } else if (this.getSaddled() && !this.worldObj.isRemote - && (this.riddenByEntity == null || this.riddenByEntity == p_70085_1_)) { - p_70085_1_.mountEntity(this); - return true; - } else { - return false; - } - } - - protected Item getDropItem() { - return this.isBurning() ? Items.cooked_porkchop : Items.porkchop; - } - - /** - * Drop 0-2 items of this living's type. @param par1 - Whether this entity has - * recently been hit by a player. @param par2 - Level of Looting used to kill - * this mob. - */ - protected void dropFewItems(boolean p_70628_1_, int p_70628_2_) { - int j = this.rand.nextInt(3) + 1 + this.rand.nextInt(1 + p_70628_2_); - - for (int k = 0; k < j; ++k) { - if (this.isBurning()) { - this.dropItem(Items.cooked_porkchop, 1); - } else { - this.dropItem(Items.porkchop, 1); - } - } - - if (this.getSaddled()) { - this.dropItem(Items.saddle, 1); - } - } - - /** - * Returns true if the pig is saddled. - */ - public boolean getSaddled() { - return (this.dataWatcher.getWatchableObjectByte(16) & 1) != 0; - } - - /** - * Set or remove the saddle of the pig. - */ - public void setSaddled(boolean p_70900_1_) { - if (p_70900_1_) { - this.dataWatcher.updateObject(16, Byte.valueOf((byte) 1)); - } else { - this.dataWatcher.updateObject(16, Byte.valueOf((byte) 0)); - } - } - - /** - * Called when a lightning bolt hits the entity. - */ - public void onStruckByLightning(EntityLightningBolt p_70077_1_) { - if (!this.worldObj.isRemote) { - EntityPigZombie entitypigzombie = new EntityPigZombie(this.worldObj); - entitypigzombie.setCurrentItemOrArmor(0, new ItemStack(Items.golden_sword)); - entitypigzombie.setLocationAndAngles(this.posX, this.posY, this.posZ, this.rotationYaw, this.rotationPitch); - this.worldObj.spawnEntityInWorld(entitypigzombie); - this.setDead(); - } - } - - /** - * Called when the mob is falling. Calculates and applies fall damage. - */ - protected void fall(float p_70069_1_) { - super.fall(p_70069_1_); - - if (p_70069_1_ > 5.0F && this.riddenByEntity instanceof EntityPlayer) { - ((EntityPlayer) this.riddenByEntity).triggerAchievement(AchievementList.flyPig); - } - } - - public EntityBoar createChild(EntityAgeable p_90011_1_) { - return new EntityBoar(this.worldObj); - } - - /** - * Checks if the parameter is an item which this animal can be fed to breed it - * (wheat, carrots or seeds depending on the animal type) - */ - public boolean isBreedingItem(ItemStack p_70877_1_) { - return p_70877_1_ != null && p_70877_1_.getItem() == Items.carrot; - } - - /** - * Return the AI task for player control. - */ - public EntityAIControlledByPlayer getAIControlledByPlayer() { - return this.aiControlledByPlayer; - } -}
\ No newline at end of file + /** AI task for player control. */ + private final EntityAIControlledByPlayer aiControlledByPlayer; + + public EntityBoar(World p_i1689_1_) { + super(p_i1689_1_); + this.setSize(0.9F, 0.9F); + this.getNavigator().setAvoidsWater(true); + this.tasks.addTask(0, new EntityAISwimming(this)); + // this.tasks.addTask(1, new EntityAIPanic(this, 1.25D)); + this.tasks.addTask(2, this.aiControlledByPlayer = new EntityAIControlledByPlayer(this, 0.3F)); + this.tasks.addTask(3, new EntityAIMate(this, 1.0D)); + this.tasks.addTask(4, new EntityAITempt(this, 1.2D, Items.carrot_on_a_stick, false)); + this.tasks.addTask(4, new EntityAITempt(this, 1.2D, Items.carrot, false)); + this.tasks.addTask(5, new EntityAIFollowParent(this, 1.1D)); + this.tasks.addTask(6, new EntityAIWander(this, 1.0D)); + this.tasks.addTask(7, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F)); + this.tasks.addTask(8, new EntityAILookIdle(this)); + } + + /** + * Returns true if the newer Entity AI code should be run + */ + public boolean isAIEnabled() { + return true; + } + + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(10.0D); + this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.25D); + } + + protected void updateAITasks() { + super.updateAITasks(); + } + + /** + * returns true if all the conditions for steering the entity are met. For pigs, + * this is true if it is being ridden by a player and the player is holding a + * carrot-on-a-stick + */ + public boolean canBeSteered() { + ItemStack itemstack = ((EntityPlayer) this.riddenByEntity).getHeldItem(); + return itemstack != null && itemstack.getItem() == Items.carrot_on_a_stick; + } + + protected void entityInit() { + super.entityInit(); + this.dataWatcher.addObject(16, Byte.valueOf((byte) 0)); + } + + /** + * (abstract) Protected helper method to write subclass entity data to NBT. + */ + public void writeEntityToNBT(NBTTagCompound p_70014_1_) { + super.writeEntityToNBT(p_70014_1_); + p_70014_1_.setBoolean("Saddle", this.getSaddled()); + } + + /** + * (abstract) Protected helper method to read subclass entity data from NBT. + */ + public void readEntityFromNBT(NBTTagCompound p_70037_1_) { + super.readEntityFromNBT(p_70037_1_); + this.setSaddled(p_70037_1_.getBoolean("Saddle")); + } + + /** + * Returns the sound this mob makes while it's alive. + */ + protected String getLivingSound() { + return "mob.pig.say"; + } + + /** + * Returns the sound this mob makes when it is hurt. + */ + protected String getHurtSound() { + return "mob.pig.say"; + } + + /** + * Returns the sound this mob makes on death. + */ + protected String getDeathSound() { + return "mob.pig.death"; + } + + protected void func_145780_a(int p_145780_1_, int p_145780_2_, int p_145780_3_, Block p_145780_4_) { + this.playSound("mob.pig.step", 0.15F, 1.0F); + } + + /** + * Called when a player interacts with a mob. e.g. gets milk from a cow, gets + * into the saddle on a pig. + */ + public boolean interact(EntityPlayer p_70085_1_) { + if (super.interact(p_70085_1_)) { + return true; + } else if (this.getSaddled() + && !this.worldObj.isRemote + && (this.riddenByEntity == null || this.riddenByEntity == p_70085_1_)) { + p_70085_1_.mountEntity(this); + return true; + } else { + return false; + } + } + + protected Item getDropItem() { + return this.isBurning() ? Items.cooked_porkchop : Items.porkchop; + } + + /** + * Drop 0-2 items of this living's type. @param par1 - Whether this entity has + * recently been hit by a player. @param par2 - Level of Looting used to kill + * this mob. + */ + protected void dropFewItems(boolean p_70628_1_, int p_70628_2_) { + int j = this.rand.nextInt(3) + 1 + this.rand.nextInt(1 + p_70628_2_); + + for (int k = 0; k < j; ++k) { + if (this.isBurning()) { + this.dropItem(Items.cooked_porkchop, 1); + } else { + this.dropItem(Items.porkchop, 1); + } + } + + if (this.getSaddled()) { + this.dropItem(Items.saddle, 1); + } + } + + /** + * Returns true if the pig is saddled. + */ + public boolean getSaddled() { + return (this.dataWatcher.getWatchableObjectByte(16) & 1) != 0; + } + + /** + * Set or remove the saddle of the pig. + */ + public void setSaddled(boolean p_70900_1_) { + if (p_70900_1_) { + this.dataWatcher.updateObject(16, Byte.valueOf((byte) 1)); + } else { + this.dataWatcher.updateObject(16, Byte.valueOf((byte) 0)); + } + } + + /** + * Called when a lightning bolt hits the entity. + */ + public void onStruckByLightning(EntityLightningBolt p_70077_1_) { + if (!this.worldObj.isRemote) { + EntityPigZombie entitypigzombie = new EntityPigZombie(this.worldObj); + entitypigzombie.setCurrentItemOrArmor(0, new ItemStack(Items.golden_sword)); + entitypigzombie.setLocationAndAngles(this.posX, this.posY, this.posZ, this.rotationYaw, this.rotationPitch); + this.worldObj.spawnEntityInWorld(entitypigzombie); + this.setDead(); + } + } + + /** + * Called when the mob is falling. Calculates and applies fall damage. + */ + protected void fall(float p_70069_1_) { + super.fall(p_70069_1_); + + if (p_70069_1_ > 5.0F && this.riddenByEntity instanceof EntityPlayer) { + ((EntityPlayer) this.riddenByEntity).triggerAchievement(AchievementList.flyPig); + } + } + + public EntityBoar createChild(EntityAgeable p_90011_1_) { + return new EntityBoar(this.worldObj); + } + + /** + * Checks if the parameter is an item which this animal can be fed to breed it + * (wheat, carrots or seeds depending on the animal type) + */ + public boolean isBreedingItem(ItemStack p_70877_1_) { + return p_70877_1_ != null && p_70877_1_.getItem() == Items.carrot; + } + + /** + * Return the AI task for player control. + */ + public EntityAIControlledByPlayer getAIControlledByPlayer() { + return this.aiControlledByPlayer; + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/type/EntityDingo.java b/src/main/java/gtPlusPlus/australia/entity/type/EntityDingo.java index 11b9737c4f..ad95631652 100644 --- a/src/main/java/gtPlusPlus/australia/entity/type/EntityDingo.java +++ b/src/main/java/gtPlusPlus/australia/entity/type/EntityDingo.java @@ -26,7 +26,6 @@ import net.minecraft.entity.monster.EntityGhast; import net.minecraft.entity.passive.EntityAnimal; import net.minecraft.entity.passive.EntityHorse; import net.minecraft.entity.passive.EntitySheep; -import net.minecraft.entity.passive.EntityTameable; import net.minecraft.entity.passive.EntityWolf; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.projectile.EntityArrow; @@ -42,495 +41,519 @@ import net.minecraft.world.World; public class EntityDingo extends EntityWolf { - private float mPrivateField1; - private float mPrivateField2; - private boolean mPrivateField3; - - /** true is the dingo is wet else false */ - private boolean isShaking; - /** This time increases while dingo is shaking and emitting water particles. */ - private float timeWolfIsShaking; - private float prevTimeWolfIsShaking; - - public EntityDingo(World p_i1696_1_) { - super(p_i1696_1_); - this.setSize(0.6F, 0.8F); - this.getNavigator().setAvoidsWater(true); - this.tasks.addTask(1, new EntityAISwimming(this)); - this.tasks.addTask(2, this.aiSit); - this.tasks.addTask(3, new EntityAILeapAtTarget(this, 0.4F)); - this.tasks.addTask(4, new EntityAIAttackOnCollide(this, 1.0D, true)); - this.tasks.addTask(5, new EntityAIFollowOwner(this, 1.0D, 10.0F, 2.0F)); - this.tasks.addTask(6, new EntityAIMate(this, 1.0D)); - this.tasks.addTask(7, new EntityAIWander(this, 1.0D)); - this.tasks.addTask(8, new EntityAIBeg(this, 8.0F)); - this.tasks.addTask(9, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F)); - this.tasks.addTask(9, new EntityAILookIdle(this)); - this.targetTasks.addTask(1, new EntityAIOwnerHurtByTarget(this)); - this.targetTasks.addTask(2, new EntityAIOwnerHurtTarget(this)); - this.targetTasks.addTask(3, new EntityAIHurtByTarget(this, true)); - this.targetTasks.addTask(4, new EntityAITargetNonTamed(this, EntitySheep.class, 200, false)); - this.setTamed(false); - } - - protected void applyEntityAttributes() { - super.applyEntityAttributes(); - this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.30000001192092896D); - - if (this.isTamed()) { - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D); - } else { - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(8.0D); - } - } - - /** - * Returns true if the newer Entity AI code should be run - */ - public boolean isAIEnabled() { - return true; - } - - /** - * Sets the active target the Task system uses for tracking - */ - public void setAttackTarget(EntityLivingBase p_70624_1_) { - super.setAttackTarget(p_70624_1_); - - if (p_70624_1_ == null) { - this.setAngry(false); - } else if (!this.isTamed()) { - this.setAngry(true); - } - } - - /** - * main AI tick function, replaces updateEntityActionState - */ - protected void updateAITick() { - this.dataWatcher.updateObject(18, Float.valueOf(this.getHealth())); - } - - protected void entityInit() { - super.entityInit(); - } - - protected void func_145780_a(int p_145780_1_, int p_145780_2_, int p_145780_3_, Block p_145780_4_) { - this.playSound("mob.wolf.step", 0.15F, 1.0F); - } - - /** - * (abstract) Protected helper method to write subclass entity data to NBT. - */ - public void writeEntityToNBT(NBTTagCompound p_70014_1_) { - super.writeEntityToNBT(p_70014_1_); - } - - /** - * (abstract) Protected helper method to read subclass entity data from NBT. - */ - public void readEntityFromNBT(NBTTagCompound p_70037_1_) { - super.readEntityFromNBT(p_70037_1_); - } - - /** - * Returns the sound this mob makes while it's alive. - */ - protected String getLivingSound() { - return this.isAngry() ? "mob.wolf.growl" - : (this.rand.nextInt(3) == 0 - ? (this.isTamed() && this.dataWatcher.getWatchableObjectFloat(18) < 10.0F ? "mob.wolf.whine" - : "mob.wolf.panting") - : "mob.wolf.bark"); - } - - /** - * Returns the sound this mob makes when it is hurt. - */ - protected String getHurtSound() { - return "mob.wolf.hurt"; - } - - /** - * Returns the sound this mob makes on death. - */ - protected String getDeathSound() { - return "mob.wolf.death"; - } - - /** - * Returns the volume for the sounds this mob makes. - */ - protected float getSoundVolume() { - return 0.4F; - } - - protected Item getDropItem() { - return Item.getItemById(-1); - } - - /** - * Called frequently so the entity can update its state every tick as required. - * For example, zombies and skeletons use this to react to sunlight and start to - * burn. - */ - public void onLivingUpdate() { - super.onLivingUpdate(); - - if (!this.worldObj.isRemote && this.isShaking && !this.mPrivateField3 && !this.hasPath() && this.onGround) { - this.mPrivateField3 = true; - this.timeWolfIsShaking = 0.0F; - this.prevTimeWolfIsShaking = 0.0F; - this.worldObj.setEntityState(this, (byte) 8); - } - } - - /** - * Called to update the entity's position/logic. - */ - public void onUpdate() { - super.onUpdate(); - this.mPrivateField2 = this.mPrivateField1; - - if (this.func_70922_bv()) { - this.mPrivateField1 += (1.0F - this.mPrivateField1) * 0.4F; - } else { - this.mPrivateField1 += (0.0F - this.mPrivateField1) * 0.4F; - } - - if (this.func_70922_bv()) { - this.numTicksToChaseTarget = 10; - } - - if (this.isWet()) { - this.isShaking = true; - this.mPrivateField3 = false; - this.timeWolfIsShaking = 0.0F; - this.prevTimeWolfIsShaking = 0.0F; - } else if ((this.isShaking || this.mPrivateField3) && this.mPrivateField3) { - if (this.timeWolfIsShaking == 0.0F) { - this.playSound("mob.wolf.shake", this.getSoundVolume(), - (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F); - } - - this.prevTimeWolfIsShaking = this.timeWolfIsShaking; - this.timeWolfIsShaking += 0.05F; - - if (this.prevTimeWolfIsShaking >= 2.0F) { - this.isShaking = false; - this.mPrivateField3 = false; - this.prevTimeWolfIsShaking = 0.0F; - this.timeWolfIsShaking = 0.0F; - } - - if (this.timeWolfIsShaking > 0.4F) { - float f = (float) this.boundingBox.minY; - int i = (int) (MathHelper.sin((this.timeWolfIsShaking - 0.4F) * (float) Math.PI) * 7.0F); - - for (int j = 0; j < i; ++j) { - float f1 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F; - float f2 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F; - this.worldObj.spawnParticle("splash", this.posX + (double) f1, (double) (f + 0.8F), - this.posZ + (double) f2, this.motionX, this.motionY, this.motionZ); - } - } - } - } - - @SideOnly(Side.CLIENT) - public boolean getWolfShaking() { - return this.isShaking; - } - - /** - * Used when calculating the amount of shading to apply while the dingo is - * shaking. - */ - @SideOnly(Side.CLIENT) - public float getShadingWhileShaking(float p_70915_1_) { - return 0.75F + (this.prevTimeWolfIsShaking + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70915_1_) - / 2.0F * 0.25F; - } - - @SideOnly(Side.CLIENT) - public float getShakeAngle(float p_70923_1_, float p_70923_2_) { - float f2 = (this.prevTimeWolfIsShaking + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70923_1_ - + p_70923_2_) / 1.8F; - - if (f2 < 0.0F) { - f2 = 0.0F; - } else if (f2 > 1.0F) { - f2 = 1.0F; - } - - return MathHelper.sin(f2 * (float) Math.PI) * MathHelper.sin(f2 * (float) Math.PI * 11.0F) * 0.15F - * (float) Math.PI; - } - - public float getEyeHeight() { - return this.height * 0.8F; - } - - @SideOnly(Side.CLIENT) - public float getInterestedAngle(float p_70917_1_) { - return (this.mPrivateField2 + (this.mPrivateField1 - this.mPrivateField2) * p_70917_1_) * 0.15F - * (float) Math.PI; - } - - /** - * The speed it takes to move the entityliving's rotationPitch through the - * faceEntity method. This is only currently use in wolves. - */ - public int getVerticalFaceSpeed() { - return this.isSitting() ? 20 : super.getVerticalFaceSpeed(); - } - - /** - * Called when the entity is attacked. - */ - public boolean attackEntityFrom(DamageSource p_70097_1_, float p_70097_2_) { - if (this.isEntityInvulnerable()) { - return false; - } else { - Entity entity = p_70097_1_.getEntity(); - this.aiSit.setSitting(false); - - if (entity != null && !(entity instanceof EntityPlayer) && !(entity instanceof EntityArrow)) { - p_70097_2_ = (p_70097_2_ + 1.0F) / 2.0F; - } - - return super.attackEntityFrom(p_70097_1_, p_70097_2_); - } - } - - public boolean attackEntityAsMob(Entity p_70652_1_) { - int i = this.isTamed() ? 4 : 2; - return p_70652_1_.attackEntityFrom(DamageSource.causeMobDamage(this), (float) i); - } - - public void setTamed(boolean p_70903_1_) { - super.setTamed(p_70903_1_); - - if (p_70903_1_) { - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D); - } else { - this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(8.0D); - } - } - - /** - * Called when a player interacts with a mob. e.g. gets milk from a cow, gets - * into the saddle on a pig. - */ - public boolean interact(EntityPlayer p_70085_1_) { - ItemStack itemstack = p_70085_1_.inventory.getCurrentItem(); - - if (this.isTamed()) { - if (itemstack != null) { - if (itemstack.getItem() instanceof ItemFood) { - ItemFood itemfood = (ItemFood) itemstack.getItem(); - - if (itemfood.isWolfsFavoriteMeat() && this.dataWatcher.getWatchableObjectFloat(18) < 20.0F) { - if (!p_70085_1_.capabilities.isCreativeMode) { - --itemstack.stackSize; - } - - this.heal((float) itemfood.func_150905_g(itemstack)); - - if (itemstack.stackSize <= 0) { - p_70085_1_.inventory.setInventorySlotContents(p_70085_1_.inventory.currentItem, - (ItemStack) null); - } - - return true; - } - } else if (itemstack.getItem() == Items.dye) { - int i = BlockColored.func_150032_b(itemstack.getItemDamage()); - - if (i != this.getCollarColor()) { - this.setCollarColor(i); - - if (!p_70085_1_.capabilities.isCreativeMode && --itemstack.stackSize <= 0) { - p_70085_1_.inventory.setInventorySlotContents(p_70085_1_.inventory.currentItem, - (ItemStack) null); - } - - return true; - } - } - } - - if (this.func_152114_e(p_70085_1_) && !this.worldObj.isRemote && !this.isBreedingItem(itemstack)) { - this.aiSit.setSitting(!this.isSitting()); - this.isJumping = false; - this.setPathToEntity((PathEntity) null); - this.setTarget((Entity) null); - this.setAttackTarget((EntityLivingBase) null); - } - } else if (itemstack != null && itemstack.getItem() == Items.bone && !this.isAngry()) { - if (!p_70085_1_.capabilities.isCreativeMode) { - --itemstack.stackSize; - } - - if (itemstack.stackSize <= 0) { - p_70085_1_.inventory.setInventorySlotContents(p_70085_1_.inventory.currentItem, (ItemStack) null); - } - - if (!this.worldObj.isRemote) { - if (this.rand.nextInt(3) == 0) { - this.setTamed(true); - this.setPathToEntity((PathEntity) null); - this.setAttackTarget((EntityLivingBase) null); - this.aiSit.setSitting(true); - this.setHealth(20.0F); - this.func_152115_b(p_70085_1_.getUniqueID().toString()); - this.playTameEffect(true); - this.worldObj.setEntityState(this, (byte) 7); - } else { - this.playTameEffect(false); - this.worldObj.setEntityState(this, (byte) 6); - } - } - - return true; - } - - return super.interact(p_70085_1_); - } - - @SideOnly(Side.CLIENT) - public void handleHealthUpdate(byte p_70103_1_) { - if (p_70103_1_ == 8) { - this.mPrivateField3 = true; - this.timeWolfIsShaking = 0.0F; - this.prevTimeWolfIsShaking = 0.0F; - } else { - super.handleHealthUpdate(p_70103_1_); - } - } - - @SideOnly(Side.CLIENT) - public float getTailRotation() { - return this.isAngry() ? 1.5393804F - : (this.isTamed() - ? (0.55F - (20.0F - this.dataWatcher.getWatchableObjectFloat(18)) * 0.02F) * (float) Math.PI - : ((float) Math.PI / 5F)); - } - - /** - * Checks if the parameter is an item which this animal can be fed to breed it - * (wheat, carrots or seeds depending on the animal type) - */ - public boolean isBreedingItem(ItemStack p_70877_1_) { - return p_70877_1_ == null ? false - : (!(p_70877_1_.getItem() instanceof ItemFood) ? false - : ((ItemFood) p_70877_1_.getItem()).isWolfsFavoriteMeat()); - } - - /** - * Will return how many at most can spawn in a chunk at once. - */ - public int getMaxSpawnedInChunk() { - return 8; - } - - /** - * Determines whether this dingo is angry or not. - */ - public boolean isAngry() { - return (this.dataWatcher.getWatchableObjectByte(16) & 2) != 0; - } - - /** - * Sets whether this dingo is angry or not. - */ - public void setAngry(boolean p_70916_1_) { - byte b0 = this.dataWatcher.getWatchableObjectByte(16); - - if (p_70916_1_) { - this.dataWatcher.updateObject(16, Byte.valueOf((byte) (b0 | 2))); - } else { - this.dataWatcher.updateObject(16, Byte.valueOf((byte) (b0 & -3))); - } - } - - /** - * Return this dingo's collar color. - */ - public int getCollarColor() { - return this.dataWatcher.getWatchableObjectByte(20) & 15; - } - - /** - * Set this dingo's collar color. - */ - public void setCollarColor(int p_82185_1_) { - this.dataWatcher.updateObject(20, Byte.valueOf((byte) (p_82185_1_ & 15))); - } - - public EntityDingo createChild(EntityAgeable p_90011_1_) { - EntityDingo entitydingo = new EntityDingo(this.worldObj); - String s = this.func_152113_b(); - - if (s != null && s.trim().length() > 0) { - entitydingo.func_152115_b(s); - entitydingo.setTamed(true); - } - - return entitydingo; - } - - public void func_70918_i(boolean p_70918_1_) { - if (p_70918_1_) { - this.dataWatcher.updateObject(19, Byte.valueOf((byte) 1)); - } else { - this.dataWatcher.updateObject(19, Byte.valueOf((byte) 0)); - } - } - - /** - * Returns true if the mob is currently able to mate with the specified mob. - */ - public boolean canMateWith(EntityAnimal p_70878_1_) { - if (p_70878_1_ == this) { - return false; - } else if (!this.isTamed()) { - return false; - } else if (!(p_70878_1_ instanceof EntityDingo)) { - return false; - } else { - EntityDingo entitydingo = (EntityDingo) p_70878_1_; - return !entitydingo.isTamed() ? false - : (entitydingo.isSitting() ? false : this.isInLove() && entitydingo.isInLove()); - } - } - - public boolean func_70922_bv() { - return this.dataWatcher.getWatchableObjectByte(19) == 1; - } - - /** - * Determines if an entity can be despawned, used on idle far away entities - */ - protected boolean canDespawn() { - return !this.isTamed() && this.ticksExisted > 2400; - } - - public boolean func_142018_a(EntityLivingBase p_142018_1_, EntityLivingBase p_142018_2_) { - if (!(p_142018_1_ instanceof EntityCreeper) && !(p_142018_1_ instanceof EntityGhast)) { - if (p_142018_1_ instanceof EntityDingo) { - EntityDingo entitydingo = (EntityDingo) p_142018_1_; - - if (entitydingo.isTamed() && entitydingo.getOwner() == p_142018_2_) { - return false; - } - } - - return p_142018_1_ instanceof EntityPlayer && p_142018_2_ instanceof EntityPlayer - && !((EntityPlayer) p_142018_2_).canAttackPlayer((EntityPlayer) p_142018_1_) ? false - : !(p_142018_1_ instanceof EntityHorse) || !((EntityHorse) p_142018_1_).isTame(); - } else { - return false; - } - } -}
\ No newline at end of file + private float mPrivateField1; + private float mPrivateField2; + private boolean mPrivateField3; + + /** true is the dingo is wet else false */ + private boolean isShaking; + /** This time increases while dingo is shaking and emitting water particles. */ + private float timeWolfIsShaking; + + private float prevTimeWolfIsShaking; + + public EntityDingo(World p_i1696_1_) { + super(p_i1696_1_); + this.setSize(0.6F, 0.8F); + this.getNavigator().setAvoidsWater(true); + this.tasks.addTask(1, new EntityAISwimming(this)); + this.tasks.addTask(2, this.aiSit); + this.tasks.addTask(3, new EntityAILeapAtTarget(this, 0.4F)); + this.tasks.addTask(4, new EntityAIAttackOnCollide(this, 1.0D, true)); + this.tasks.addTask(5, new EntityAIFollowOwner(this, 1.0D, 10.0F, 2.0F)); + this.tasks.addTask(6, new EntityAIMate(this, 1.0D)); + this.tasks.addTask(7, new EntityAIWander(this, 1.0D)); + this.tasks.addTask(8, new EntityAIBeg(this, 8.0F)); + this.tasks.addTask(9, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F)); + this.tasks.addTask(9, new EntityAILookIdle(this)); + this.targetTasks.addTask(1, new EntityAIOwnerHurtByTarget(this)); + this.targetTasks.addTask(2, new EntityAIOwnerHurtTarget(this)); + this.targetTasks.addTask(3, new EntityAIHurtByTarget(this, true)); + this.targetTasks.addTask(4, new EntityAITargetNonTamed(this, EntitySheep.class, 200, false)); + this.setTamed(false); + } + + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.30000001192092896D); + + if (this.isTamed()) { + this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D); + } else { + this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(8.0D); + } + } + + /** + * Returns true if the newer Entity AI code should be run + */ + public boolean isAIEnabled() { + return true; + } + + /** + * Sets the active target the Task system uses for tracking + */ + public void setAttackTarget(EntityLivingBase p_70624_1_) { + super.setAttackTarget(p_70624_1_); + + if (p_70624_1_ == null) { + this.setAngry(false); + } else if (!this.isTamed()) { + this.setAngry(true); + } + } + + /** + * main AI tick function, replaces updateEntityActionState + */ + protected void updateAITick() { + this.dataWatcher.updateObject(18, Float.valueOf(this.getHealth())); + } + + protected void entityInit() { + super.entityInit(); + } + + protected void func_145780_a(int p_145780_1_, int p_145780_2_, int p_145780_3_, Block p_145780_4_) { + this.playSound("mob.wolf.step", 0.15F, 1.0F); + } + + /** + * (abstract) Protected helper method to write subclass entity data to NBT. + */ + public void writeEntityToNBT(NBTTagCompound p_70014_1_) { + super.writeEntityToNBT(p_70014_1_); + } + + /** + * (abstract) Protected helper method to read subclass entity data from NBT. + */ + public void readEntityFromNBT(NBTTagCompound p_70037_1_) { + super.readEntityFromNBT(p_70037_1_); + } + + /** + * Returns the sound this mob makes while it's alive. + */ + protected String getLivingSound() { + return this.isAngry() + ? "mob.wolf.growl" + : (this.rand.nextInt(3) == 0 + ? (this.isTamed() && this.dataWatcher.getWatchableObjectFloat(18) < 10.0F + ? "mob.wolf.whine" + : "mob.wolf.panting") + : "mob.wolf.bark"); + } + + /** + * Returns the sound this mob makes when it is hurt. + */ + protected String getHurtSound() { + return "mob.wolf.hurt"; + } + + /** + * Returns the sound this mob makes on death. + */ + protected String getDeathSound() { + return "mob.wolf.death"; + } + + /** + * Returns the volume for the sounds this mob makes. + */ + protected float getSoundVolume() { + return 0.4F; + } + + protected Item getDropItem() { + return Item.getItemById(-1); + } + + /** + * Called frequently so the entity can update its state every tick as required. + * For example, zombies and skeletons use this to react to sunlight and start to + * burn. + */ + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (!this.worldObj.isRemote && this.isShaking && !this.mPrivateField3 && !this.hasPath() && this.onGround) { + this.mPrivateField3 = true; + this.timeWolfIsShaking = 0.0F; + this.prevTimeWolfIsShaking = 0.0F; + this.worldObj.setEntityState(this, (byte) 8); + } + } + + /** + * Called to update the entity's position/logic. + */ + public void onUpdate() { + super.onUpdate(); + this.mPrivateField2 = this.mPrivateField1; + + if (this.func_70922_bv()) { + this.mPrivateField1 += (1.0F - this.mPrivateField1) * 0.4F; + } else { + this.mPrivateField1 += (0.0F - this.mPrivateField1) * 0.4F; + } + + if (this.func_70922_bv()) { + this.numTicksToChaseTarget = 10; + } + + if (this.isWet()) { + this.isShaking = true; + this.mPrivateField3 = false; + this.timeWolfIsShaking = 0.0F; + this.prevTimeWolfIsShaking = 0.0F; + } else if ((this.isShaking || this.mPrivateField3) && this.mPrivateField3) { + if (this.timeWolfIsShaking == 0.0F) { + this.playSound( + "mob.wolf.shake", + this.getSoundVolume(), + (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F); + } + + this.prevTimeWolfIsShaking = this.timeWolfIsShaking; + this.timeWolfIsShaking += 0.05F; + + if (this.prevTimeWolfIsShaking >= 2.0F) { + this.isShaking = false; + this.mPrivateField3 = false; + this.prevTimeWolfIsShaking = 0.0F; + this.timeWolfIsShaking = 0.0F; + } + + if (this.timeWolfIsShaking > 0.4F) { + float f = (float) this.boundingBox.minY; + int i = (int) (MathHelper.sin((this.timeWolfIsShaking - 0.4F) * (float) Math.PI) * 7.0F); + + for (int j = 0; j < i; ++j) { + float f1 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F; + float f2 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F; + this.worldObj.spawnParticle( + "splash", + this.posX + (double) f1, + (double) (f + 0.8F), + this.posZ + (double) f2, + this.motionX, + this.motionY, + this.motionZ); + } + } + } + } + + @SideOnly(Side.CLIENT) + public boolean getWolfShaking() { + return this.isShaking; + } + + /** + * Used when calculating the amount of shading to apply while the dingo is + * shaking. + */ + @SideOnly(Side.CLIENT) + public float getShadingWhileShaking(float p_70915_1_) { + return 0.75F + + (this.prevTimeWolfIsShaking + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70915_1_) + / 2.0F + * 0.25F; + } + + @SideOnly(Side.CLIENT) + public float getShakeAngle(float p_70923_1_, float p_70923_2_) { + float f2 = (this.prevTimeWolfIsShaking + + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70923_1_ + + p_70923_2_) + / 1.8F; + + if (f2 < 0.0F) { + f2 = 0.0F; + } else if (f2 > 1.0F) { + f2 = 1.0F; + } + + return MathHelper.sin(f2 * (float) Math.PI) + * MathHelper.sin(f2 * (float) Math.PI * 11.0F) + * 0.15F + * (float) Math.PI; + } + + public float getEyeHeight() { + return this.height * 0.8F; + } + + @SideOnly(Side.CLIENT) + public float getInterestedAngle(float p_70917_1_) { + return (this.mPrivateField2 + (this.mPrivateField1 - this.mPrivateField2) * p_70917_1_) + * 0.15F + * (float) Math.PI; + } + + /** + * The speed it takes to move the entityliving's rotationPitch through the + * faceEntity method. This is only currently use in wolves. + */ + public int getVerticalFaceSpeed() { + return this.isSitting() ? 20 : super.getVerticalFaceSpeed(); + } + + /** + * Called when the entity is attacked. + */ + public boolean attackEntityFrom(DamageSource p_70097_1_, float p_70097_2_) { + if (this.isEntityInvulnerable()) { + return false; + } else { + Entity entity = p_70097_1_.getEntity(); + this.aiSit.setSitting(false); + + if (entity != null && !(entity instanceof EntityPlayer) && !(entity instanceof EntityArrow)) { + p_70097_2_ = (p_70097_2_ + 1.0F) / 2.0F; + } + + return super.attackEntityFrom(p_70097_1_, p_70097_2_); + } + } + + public boolean attackEntityAsMob(Entity p_70652_1_) { + int i = this.isTamed() ? 4 : 2; + return p_70652_1_.attackEntityFrom(DamageSource.causeMobDamage(this), (float) i); + } + + public void setTamed(boolean p_70903_1_) { + super.setTamed(p_70903_1_); + + if (p_70903_1_) { + this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20.0D); + } else { + this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(8.0D); + } + } + + /** + * Called when a player interacts with a mob. e.g. gets milk from a cow, gets + * into the saddle on a pig. + */ + public boolean interact(EntityPlayer p_70085_1_) { + ItemStack itemstack = p_70085_1_.inventory.getCurrentItem(); + + if (this.isTamed()) { + if (itemstack != null) { + if (itemstack.getItem() instanceof ItemFood) { + ItemFood itemfood = (ItemFood) itemstack.getItem(); + + if (itemfood.isWolfsFavoriteMeat() && this.dataWatcher.getWatchableObjectFloat(18) < 20.0F) { + if (!p_70085_1_.capabilities.isCreativeMode) { + --itemstack.stackSize; + } + + this.heal((float) itemfood.func_150905_g(itemstack)); + + if (itemstack.stackSize <= 0) { + p_70085_1_.inventory.setInventorySlotContents( + p_70085_1_.inventory.currentItem, (ItemStack) null); + } + + return true; + } + } else if (itemstack.getItem() == Items.dye) { + int i = BlockColored.func_150032_b(itemstack.getItemDamage()); + + if (i != this.getCollarColor()) { + this.setCollarColor(i); + + if (!p_70085_1_.capabilities.isCreativeMode && --itemstack.stackSize <= 0) { + p_70085_1_.inventory.setInventorySlotContents( + p_70085_1_.inventory.currentItem, (ItemStack) null); + } + + return true; + } + } + } + + if (this.func_152114_e(p_70085_1_) && !this.worldObj.isRemote && !this.isBreedingItem(itemstack)) { + this.aiSit.setSitting(!this.isSitting()); + this.isJumping = false; + this.setPathToEntity((PathEntity) null); + this.setTarget((Entity) null); + this.setAttackTarget((EntityLivingBase) null); + } + } else if (itemstack != null && itemstack.getItem() == Items.bone && !this.isAngry()) { + if (!p_70085_1_.capabilities.isCreativeMode) { + --itemstack.stackSize; + } + + if (itemstack.stackSize <= 0) { + p_70085_1_.inventory.setInventorySlotContents(p_70085_1_.inventory.currentItem, (ItemStack) null); + } + + if (!this.worldObj.isRemote) { + if (this.rand.nextInt(3) == 0) { + this.setTamed(true); + this.setPathToEntity((PathEntity) null); + this.setAttackTarget((EntityLivingBase) null); + this.aiSit.setSitting(true); + this.setHealth(20.0F); + this.func_152115_b(p_70085_1_.getUniqueID().toString()); + this.playTameEffect(true); + this.worldObj.setEntityState(this, (byte) 7); + } else { + this.playTameEffect(false); + this.worldObj.setEntityState(this, (byte) 6); + } + } + + return true; + } + + return super.interact(p_70085_1_); + } + + @SideOnly(Side.CLIENT) + public void handleHealthUpdate(byte p_70103_1_) { + if (p_70103_1_ == 8) { + this.mPrivateField3 = true; + this.timeWolfIsShaking = 0.0F; + this.prevTimeWolfIsShaking = 0.0F; + } else { + super.handleHealthUpdate(p_70103_1_); + } + } + + @SideOnly(Side.CLIENT) + public float getTailRotation() { + return this.isAngry() + ? 1.5393804F + : (this.isTamed() + ? (0.55F - (20.0F - this.dataWatcher.getWatchableObjectFloat(18)) * 0.02F) * (float) Math.PI + : ((float) Math.PI / 5F)); + } + + /** + * Checks if the parameter is an item which this animal can be fed to breed it + * (wheat, carrots or seeds depending on the animal type) + */ + public boolean isBreedingItem(ItemStack p_70877_1_) { + return p_70877_1_ == null + ? false + : (!(p_70877_1_.getItem() instanceof ItemFood) + ? false + : ((ItemFood) p_70877_1_.getItem()).isWolfsFavoriteMeat()); + } + + /** + * Will return how many at most can spawn in a chunk at once. + */ + public int getMaxSpawnedInChunk() { + return 8; + } + + /** + * Determines whether this dingo is angry or not. + */ + public boolean isAngry() { + return (this.dataWatcher.getWatchableObjectByte(16) & 2) != 0; + } + + /** + * Sets whether this dingo is angry or not. + */ + public void setAngry(boolean p_70916_1_) { + byte b0 = this.dataWatcher.getWatchableObjectByte(16); + + if (p_70916_1_) { + this.dataWatcher.updateObject(16, Byte.valueOf((byte) (b0 | 2))); + } else { + this.dataWatcher.updateObject(16, Byte.valueOf((byte) (b0 & -3))); + } + } + + /** + * Return this dingo's collar color. + */ + public int getCollarColor() { + return this.dataWatcher.getWatchableObjectByte(20) & 15; + } + + /** + * Set this dingo's collar color. + */ + public void setCollarColor(int p_82185_1_) { + this.dataWatcher.updateObject(20, Byte.valueOf((byte) (p_82185_1_ & 15))); + } + + public EntityDingo createChild(EntityAgeable p_90011_1_) { + EntityDingo entitydingo = new EntityDingo(this.worldObj); + String s = this.func_152113_b(); + + if (s != null && s.trim().length() > 0) { + entitydingo.func_152115_b(s); + entitydingo.setTamed(true); + } + + return entitydingo; + } + + public void func_70918_i(boolean p_70918_1_) { + if (p_70918_1_) { + this.dataWatcher.updateObject(19, Byte.valueOf((byte) 1)); + } else { + this.dataWatcher.updateObject(19, Byte.valueOf((byte) 0)); + } + } + + /** + * Returns true if the mob is currently able to mate with the specified mob. + */ + public boolean canMateWith(EntityAnimal p_70878_1_) { + if (p_70878_1_ == this) { + return false; + } else if (!this.isTamed()) { + return false; + } else if (!(p_70878_1_ instanceof EntityDingo)) { + return false; + } else { + EntityDingo entitydingo = (EntityDingo) p_70878_1_; + return !entitydingo.isTamed() + ? false + : (entitydingo.isSitting() ? false : this.isInLove() && entitydingo.isInLove()); + } + } + + public boolean func_70922_bv() { + return this.dataWatcher.getWatchableObjectByte(19) == 1; + } + + /** + * Determines if an entity can be despawned, used on idle far away entities + */ + protected boolean canDespawn() { + return !this.isTamed() && this.ticksExisted > 2400; + } + + public boolean func_142018_a(EntityLivingBase p_142018_1_, EntityLivingBase p_142018_2_) { + if (!(p_142018_1_ instanceof EntityCreeper) && !(p_142018_1_ instanceof EntityGhast)) { + if (p_142018_1_ instanceof EntityDingo) { + EntityDingo entitydingo = (EntityDingo) p_142018_1_; + + if (entitydingo.isTamed() && entitydingo.getOwner() == p_142018_2_) { + return false; + } + } + + return p_142018_1_ instanceof EntityPlayer + && p_142018_2_ instanceof EntityPlayer + && !((EntityPlayer) p_142018_2_).canAttackPlayer((EntityPlayer) p_142018_1_) + ? false + : !(p_142018_1_ instanceof EntityHorse) || !((EntityHorse) p_142018_1_).isTame(); + } else { + return false; + } + } +} diff --git a/src/main/java/gtPlusPlus/australia/entity/type/EntityOctopus.java b/src/main/java/gtPlusPlus/australia/entity/type/EntityOctopus.java index f88d931b52..9d9f883865 100644 --- a/src/main/java/gtPlusPlus/australia/entity/type/EntityOctopus.java +++ b/src/main/java/gtPlusPlus/australia/entity/type/EntityOctopus.java @@ -9,8 +9,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.MathHelper; import net.minecraft.world.World; -public class EntityOctopus extends EntityWaterMob -{ +public class EntityOctopus extends EntityWaterMob { public float octopusPitch; public float prevSquidPitch; public float octopusYaw; @@ -23,23 +22,23 @@ public class EntityOctopus extends EntityWaterMob public float tentacleAngle; /** the last calculated angle of the tentacles in radians */ public float lastTentacleAngle; + private float randomMotionSpeed; /** change in octopusRotation in radians. */ private float rotationVelocity; + private float field_70871_bB; private float randomMotionVecX; private float randomMotionVecY; private float randomMotionVecZ; - public EntityOctopus(World p_i1693_1_) - { + public EntityOctopus(World p_i1693_1_) { super(p_i1693_1_); this.setSize(0.95F, 0.95F); this.rotationVelocity = 1.0F / (this.rand.nextFloat() + 1.0F) * 0.2F; } - protected void applyEntityAttributes() - { + protected void applyEntityAttributes() { super.applyEntityAttributes(); this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(10.0D); } @@ -47,37 +46,32 @@ public class EntityOctopus extends EntityWaterMob /** * Returns the sound this mob makes while it's alive. */ - protected String getLivingSound() - { + protected String getLivingSound() { return null; } /** * Returns the sound this mob makes when it is hurt. */ - protected String getHurtSound() - { + protected String getHurtSound() { return null; } /** * Returns the sound this mob makes on death. */ - protected String getDeathSound() - { + protected String getDeathSound() { return null; } /** * Returns the volume for the sounds this mob makes. */ - protected float getSoundVolume() - { + protected float getSoundVolume() { return 0.4F; } - protected Item getDropItem() - { + protected Item getDropItem() { return Item.getItemById(0); } @@ -85,8 +79,7 @@ public class EntityOctopus extends EntityWaterMob * returns if this entity triggers Block.onEntityWalking on the blocks they walk on. used for spiders and wolves to * prevent them from trampling crops */ - protected boolean canTriggerWalking() - { + protected boolean canTriggerWalking() { return false; } @@ -94,12 +87,10 @@ public class EntityOctopus extends EntityWaterMob * Drop 0-2 items of this living's type. @param par1 - Whether this entity has recently been hit by a player. @param * par2 - Level of Looting used to kill this mob. */ - protected void dropFewItems(boolean p_70628_1_, int p_70628_2_) - { + protected void dropFewItems(boolean p_70628_1_, int p_70628_2_) { int j = this.rand.nextInt(3 + p_70628_2_) + 1; - for (int k = 0; k < j; ++k) - { + for (int k = 0; k < j; ++k) { this.entityDropItem(new ItemStack(Items.dye, 1, 0), 0.0F); } } @@ -108,17 +99,16 @@ public class EntityOctopus extends EntityWaterMob * Checks if this entity is inside water (if inWater field is true as a result of handleWaterMovement() returning * true) */ - public boolean isInWater() - { - return this.worldObj.handleMaterialAcceleration(this.boundingBox.expand(0.0D, -0.6000000238418579D, 0.0D), Material.water, this); + public boolean isInWater() { + return this.worldObj.handleMaterialAcceleration( + this.boundingBox.expand(0.0D, -0.6000000238418579D, 0.0D), Material.water, this); } /** * Called frequently so the entity can update its state every tick as required. For example, zombies and skeletons * use this to react to sunlight and start to burn. */ - public void onLivingUpdate() - { + public void onLivingUpdate() { super.onLivingUpdate(); this.prevSquidPitch = this.octopusPitch; this.prevSquidYaw = this.octopusYaw; @@ -126,90 +116,78 @@ public class EntityOctopus extends EntityWaterMob this.lastTentacleAngle = this.tentacleAngle; this.octopusRotation += this.rotationVelocity; - if (this.octopusRotation > ((float)Math.PI * 2F)) - { - this.octopusRotation -= ((float)Math.PI * 2F); + if (this.octopusRotation > ((float) Math.PI * 2F)) { + this.octopusRotation -= ((float) Math.PI * 2F); - if (this.rand.nextInt(10) == 0) - { + if (this.rand.nextInt(10) == 0) { this.rotationVelocity = 1.0F / (this.rand.nextFloat() + 1.0F) * 0.2F; } } - if (this.isInWater()) - { + if (this.isInWater()) { float f; - if (this.octopusRotation < (float)Math.PI) - { - f = this.octopusRotation / (float)Math.PI; - this.tentacleAngle = MathHelper.sin(f * f * (float)Math.PI) * (float)Math.PI * 0.25F; + if (this.octopusRotation < (float) Math.PI) { + f = this.octopusRotation / (float) Math.PI; + this.tentacleAngle = MathHelper.sin(f * f * (float) Math.PI) * (float) Math.PI * 0.25F; - if ((double)f > 0.75D) - { + if ((double) f > 0.75D) { this.randomMotionSpeed = 1.0F; this.field_70871_bB = 1.0F; - } - else - { + } else { this.field_70871_bB *= 0.8F; } - } - else - { + } else { this.tentacleAngle = 0.0F; this.randomMotionSpeed *= 0.9F; this.field_70871_bB *= 0.99F; } - if (!this.worldObj.isRemote) - { - this.motionX = (double)(this.randomMotionVecX * this.randomMotionSpeed); - this.motionY = (double)(this.randomMotionVecY * this.randomMotionSpeed); - this.motionZ = (double)(this.randomMotionVecZ * this.randomMotionSpeed); + if (!this.worldObj.isRemote) { + this.motionX = (double) (this.randomMotionVecX * this.randomMotionSpeed); + this.motionY = (double) (this.randomMotionVecY * this.randomMotionSpeed); + this.motionZ = (double) (this.randomMotionVecZ * this.randomMotionSpeed); } f = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); - this.renderYawOffset += (-((float)Math.atan2(this.motionX, this.motionZ)) * 180.0F / (float)Math.PI - this.renderYawOffset) * 0.1F; + this.renderYawOffset += (-((float) Math.atan2(this.motionX, this.motionZ)) * 180.0F / (float) Math.PI + - this.renderYawOffset) + * 0.1F; this.rotationYaw = this.renderYawOffset; - this.octopusYaw += (float)Math.PI * this.field_70871_bB * 1.5F; - this.octopusPitch += (-((float)Math.atan2((double)f, this.motionY)) * 180.0F / (float)Math.PI - this.octopusPitch) * 0.1F; - } - else - { - this.tentacleAngle = MathHelper.abs(MathHelper.sin(this.octopusRotation)) * (float)Math.PI * 0.25F; - - if (!this.worldObj.isRemote) - { + this.octopusYaw += (float) Math.PI * this.field_70871_bB * 1.5F; + this.octopusPitch += + (-((float) Math.atan2((double) f, this.motionY)) * 180.0F / (float) Math.PI - this.octopusPitch) + * 0.1F; + } else { + this.tentacleAngle = MathHelper.abs(MathHelper.sin(this.octopusRotation)) * (float) Math.PI * 0.25F; + + if (!this.worldObj.isRemote) { this.motionX = 0.0D; this.motionY -= 0.08D; this.motionY *= 0.9800000190734863D; this.motionZ = 0.0D; } - this.octopusPitch = (float)((double)this.octopusPitch + (double)(-90.0F - this.octopusPitch) * 0.02D); + this.octopusPitch = (float) ((double) this.octopusPitch + (double) (-90.0F - this.octopusPitch) * 0.02D); } } /** * Moves the entity based on the specified heading. Args: strafe, forward */ - public void moveEntityWithHeading(float p_70612_1_, float p_70612_2_) - { + public void moveEntityWithHeading(float p_70612_1_, float p_70612_2_) { this.moveEntity(this.motionX, this.motionY, this.motionZ); } - protected void updateEntityActionState() - { + protected void updateEntityActionState() { ++this.entityAge; - if (this.entityAge > 100) - { + if (this.entityAge > 100) { this.randomMotionVecX = this.randomMotionVecY = this.randomMotionVecZ = 0.0F; - } - else if (this.rand.nextInt(50) == 0 || !this.inWater || this.randomMotionVecX == 0.0F && this.randomMotionVecY == 0.0F && this.randomMotionVecZ == 0.0F) - { - float f = this.rand.nextFloat() * (float)Math.PI * 2.0F; + } else if (this.rand.nextInt(50) == 0 + || !this.inWater + || this.randomMotionVecX == 0.0F && this.randomMotionVecY == 0.0F && this.randomMotionVecZ == 0.0F) { + float f = this.rand.nextFloat() * (float) Math.PI * 2.0F; this.randomMotionVecX = MathHelper.cos(f) * 0.2F; this.randomMotionVecY = -0.1F + this.rand.nextFloat() * 0.2F; this.randomMotionVecZ = MathHelper.sin(f) * 0.2F; @@ -221,8 +199,7 @@ public class EntityOctopus extends EntityWaterMob /** * Checks if the entity's current position is a valid location to spawn this entity. */ - public boolean getCanSpawnHere() - { + public boolean getCanSpawnHere() { return this.posY > 45.0D && this.posY < 63.0D && super.getCanSpawnHere(); } -}
\ No newline at end of file +} |