package minefantasy.mf2.client.render.block;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
/**
*
* @author Anonymous Productions
*
* Sources are provided for educational reasons.
* though small bits of code, or methods can be used in your own creations.
*/
public class ModelAnvil extends ModelBase {
//fields
ModelRenderer End;
ModelRenderer Post;
ModelRenderer Body;
ModelRenderer Tip;
ModelRenderer Back;
ModelRenderer floor;
ModelRenderer Base;
public ModelAnvil()
{
textureWidth = 64;
textureHeight = 32;
End = new ModelRenderer(this, 0, 24);
End.addBox(-10F, -3F, -2F, 3, 4, 4);
End.setRotationPoint(0F, -5F, 0F);
End.setTextureSize(64, 32);
End.mirror = true;
setRotation(End, 0F, 0F, 0F);
Post = new ModelRenderer(this, 48, 24);
Post.addBox(-2F, 0F, -2F, 4, 4, 4);
Post.setRotationPoint(0F, -4F, 0F);
Post.setTextureSize(64, 32);
Post.mirror = true;
setRotation(Post, 0F, 0F, 0F);
Body = new ModelRenderer(this, 32, 0);
Body.addBox(-5F, -3F, -3F, 10, 4, 6);
Body.setRotationPoint(0F, -5F, 0F);
Body.setTextureSize(64, 32);
Body.mirror = true;
setRotation(Body, 0F, 0F, 0F);
Tip = new ModelRenderer(this, 0, 10);
Tip.addBox(5F, -2F, -1F, 3, 2, 2);
Tip.setRotationPoint(0F, -5F, 0F);
Tip.setTextureSize(64, 32);
Tip.mirror = true;
setRotation(Tip, 0F, 0F, 0F);
Back = new ModelRenderer(this, 0, 19);
Back.addBox(-7F, -2F, -1F, 2, 3, 2);
Back.setRotationPoint(0F, -5F, 0F);
Back.setTextureSize(64, 32);
Back.mirror = true;
setRotation(Back, 0F, 0F, 0F);
Base = new ModelRenderer(this, 0, 0);
Base.addBox(-3F, 0F, -3F, 6, 2, 6);
Base.setRotationPoint(0F, 0F, 0F);
Base.setTextureSize(64, 32);
Base.mirror = true;
setRotation(Base, 0F, 0F, 0F);
floor = new ModelRenderer(this, 14, 21);
floor.addBox(-4F, 2F, -4F, 8, 3, 8);
floor.setRotationPoint(0F, 0F, 0F);
floor.setTextureSize(64, 32);
floor.mirror = true;
}
@Override
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);
End.render(f5);
Base.render(f5);
Post.render(f5);
Body.render(f5);
Tip.render(f5);
Back.render(f5);
}
private void setRotation(ModelRenderer model, float x, float y, float z)
{
model.rotateAngleX = x;
model.rotateAngleY = y;
model.rotateAngleZ = z;
}
public void renderModel(float f)
{
End.render(f);
Base.render(f);
Post.render(f);
Body.render(f);
Tip.render(f);
Back.render(f);
floor.render(f);
}
}