package openblocks.client.model;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.tileentity.TileEntity;
import openblocks.common.tileentity.TileEntitySprinkler;
public class ModelSprinkler extends ModelBase {
ModelRenderer side1;
ModelRenderer side2;
ModelRenderer end1;
ModelRenderer sprayer;
ModelRenderer end2;
public ModelSprinkler() {
textureWidth = 64;
textureHeight = 32;
side1 = new ModelRenderer(this, 26, 0);
side1.addBox(-0.5F, 0F, -6F, 1, 1, 12);
side1.setRotationPoint(-2F, 14F, 0F);
side1.setTextureSize(64, 32);
side1.mirror = true;
setRotation(side1, 0F, 0F, 0F);
side2 = new ModelRenderer(this, 25, 0);
side2.addBox(-0.5F, 0F, -6F, 1, 1, 12);
side2.setRotationPoint(2F, 14F, 0F);
side2.setTextureSize(64, 32);
side2.mirror = true;
setRotation(side2, 0F, 0F, 0F);
end1 = new ModelRenderer(this, 0, 26);
end1.addBox(-3F, 0F, -7F, 6, 3, 1);
end1.setRotationPoint(0F, 13F, 0F);
end1.setTextureSize(64, 32);
end1.mirror = true;
setRotation(end1, 0F, 0F, 0F);
sprayer = new ModelRenderer(this, 0, 0);
sprayer.addBox(-0.5F, -2.3F, -6F, 1, 1, 12);
sprayer.setRotationPoint(0F, 15.5F, 0F);
sprayer.setTextureSize(64, 32);
sprayer.mirror = true;
setRotation(sprayer, 0F, 0F, 0F);
end2 = new ModelRenderer(this, 0, 26);
end2.addBox(-3F, 0F, 6F, 6, 3, 1);
end2.setRotationPoint(0F, 13F, 0F);
end2.setTextureSize(64, 32);
end2.mirror = true;
setRotation(end2, 0F, 0F, 0F);
}
public void render(TileEntitySprinkler sprinkler, float f) {
float f5 = 0.0625F;
setRotationAngles(sprinkler, f);
side1.render(f5);
side2.render(f5);
end1.render(f5);
end2.render(f5);
sprayer.render(f5);
}
private static void setRotation(ModelRenderer model, float x, float y, float z) {
model.rotateAngleX = x;
model.rotateAngleY = y;
model.rotateAngleZ = z;
}
/**
* @param f
*/
public void setRotationAngles(TileEntity te, float f) {
TileEntitySprinkler sprinkler = (TileEntitySprinkler)te;
sprayer.rotateAngleZ = (float)(Math.toRadians(30) * sprinkler.getSprayDirection());
}
}