001 package net.minecraft.src; 002 003 import cpw.mods.fml.common.Side; 004 import cpw.mods.fml.common.asm.SideOnly; 005 006 @SideOnly(Side.CLIENT) 007 public class ModelMagmaCube extends ModelBase 008 { 009 ModelRenderer[] field_78109_a = new ModelRenderer[8]; 010 ModelRenderer field_78108_b; 011 012 public ModelMagmaCube() 013 { 014 for (int var1 = 0; var1 < this.field_78109_a.length; ++var1) 015 { 016 byte var2 = 0; 017 int var3 = var1; 018 019 if (var1 == 2) 020 { 021 var2 = 24; 022 var3 = 10; 023 } 024 else if (var1 == 3) 025 { 026 var2 = 24; 027 var3 = 19; 028 } 029 030 this.field_78109_a[var1] = new ModelRenderer(this, var2, var3); 031 this.field_78109_a[var1].addBox(-4.0F, (float)(16 + var1), -4.0F, 8, 1, 8); 032 } 033 034 this.field_78108_b = new ModelRenderer(this, 0, 16); 035 this.field_78108_b.addBox(-2.0F, 18.0F, -2.0F, 4, 4, 4); 036 } 037 038 public int func_78107_a() 039 { 040 return 5; 041 } 042 043 /** 044 * Used for easily adding entity-dependent animations. The second and third float params here are the same second 045 * and third as in the setRotationAngles method. 046 */ 047 public void setLivingAnimations(EntityLiving par1EntityLiving, float par2, float par3, float par4) 048 { 049 EntityMagmaCube var5 = (EntityMagmaCube)par1EntityLiving; 050 float var6 = var5.field_70812_c + (var5.field_70811_b - var5.field_70812_c) * par4; 051 052 if (var6 < 0.0F) 053 { 054 var6 = 0.0F; 055 } 056 057 for (int var7 = 0; var7 < this.field_78109_a.length; ++var7) 058 { 059 this.field_78109_a[var7].rotationPointY = (float)(-(4 - var7)) * var6 * 1.7F; 060 } 061 } 062 063 /** 064 * Sets the models various rotation angles then renders the model. 065 */ 066 public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) 067 { 068 this.setRotationAngles(par2, par3, par4, par5, par6, par7); 069 this.field_78108_b.render(par7); 070 ModelRenderer[] var8 = this.field_78109_a; 071 int var9 = var8.length; 072 073 for (int var10 = 0; var10 < var9; ++var10) 074 { 075 ModelRenderer var11 = var8[var10]; 076 var11.render(par7); 077 } 078 } 079 }