BloodMagic/BM_src/WayofTime/alchemicalWizardry/common/renderer/model/ModelElemental.java
2014-01-17 21:43:13 +00:00

82 lines
2.6 KiB
Java

package WayofTime.alchemicalWizardry.common.renderer.model;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
import net.minecraft.entity.monster.EntityBlaze;
import net.minecraft.world.World;
public class ModelElemental extends ModelBase
{
//fields
ModelRenderer body;
ModelRenderer Shape2;
ModelRenderer Shape1;
ModelRenderer Shape3;
public ModelElemental()
{
textureWidth = 64;
textureHeight = 32;
body = new ModelRenderer(this, 33, 0);
body.addBox(-3F, -3F, -3F, 6, 6, 6);
body.setRotationPoint(0F, 14F, 0F);
body.setTextureSize(64, 32);
body.mirror = true;
setRotation(body, 0F, 0F, 0F);
Shape2 = new ModelRenderer(this, 0, 0);
Shape2.addBox(-4F, -4F, -4F, 8, 8, 8);
Shape2.setRotationPoint(0F, 14F, 0F);
Shape2.setTextureSize(64, 32);
Shape2.mirror = true;
setRotation(Shape2, ((float) Math.PI / 4F), ((float) Math.PI / 4F), 0F);
Shape1 = new ModelRenderer(this, 0, 0);
Shape1.addBox(-4F, -4F, -4F, 8, 8, 8);
Shape1.setRotationPoint(0F, 14F, 0F);
Shape1.setTextureSize(64, 32);
Shape1.mirror = true;
setRotation(Shape1, 0F, ((float) Math.PI / 4F), ((float) Math.PI / 4F));
Shape3 = new ModelRenderer(this, 0, 0);
Shape3.addBox(-4F, -4F, -4F, 8, 8, 8);
Shape3.setRotationPoint(0F, 14F, 0F);
Shape3.setTextureSize(64, 32);
Shape3.mirror = true;
setRotation(Shape3, ((float) Math.PI / 4F), 0F, ((float) Math.PI / 4F));
}
public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
{
super.render(entity, f, f1, f2, f3, f4, f5);
setRotationAngles(f, f1, f2, f3, f4, f5, entity);
body.render(f5);
Shape2.render(f5);
Shape1.render(f5);
Shape3.render(f5);
}
private void setRotation(ModelRenderer model, float x, float y, float z)
{
model.rotateAngleX = x;
model.rotateAngleY = y;
model.rotateAngleZ = z;
}
public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity)
{
super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
World world = entity.worldObj;
if (world == null)
{
return;
}
int ratio = 20;
float rot = (entity.worldObj.getWorldTime() % ratio) / ratio;
Shape1.rotateAngleX = f / 5;
Shape2.rotateAngleZ = f / 5;
Shape3.rotateAngleY = f / 5;
EntityBlaze d;
}
}