package com.zivilon.cinder_loe.client.model;

import lotr.client.model.LOTRModelBiped;
import net.minecraft.client.model.ModelBox;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;

// Made with Blockbench 4.12.5
// Exported for Minecraft version 1.7 - 1.12
// Paste this class into your mod and generate all required imports

public class ModelBodyDorwinionElite extends LOTRModelBiped {
	public ModelRenderer Body;
	public ModelRenderer Backplate;
	public ModelRenderer FrontPlate;
	public ModelRenderer LeftArm;
	public ModelRenderer PauldronLeft;
	public ModelRenderer PauldronTopperLeft;
	public ModelRenderer RightArm;
	public ModelRenderer PauldronRight;
	public ModelRenderer PauldronTopperRight;

    public ModelBodyDorwinionElite(float f) {
		textureWidth = 64;
		textureHeight = 64;
        this.bipedBody.cubeList.clear();
        this.bipedRightArm.cubeList.clear();
        this.bipedLeftArm.cubeList.clear();
        this.bipedHead.cubeList.clear();
        this.bipedHeadwear.cubeList.clear();
        this.bipedRightLeg.cubeList.clear();
        this.bipedLeftLeg.cubeList.clear();

		Body = new ModelRenderer(this);
		Body.setRotationPoint(0.0F, 0.0F, 0.0F);
		bipedBody.addChild(Body);
		Body.cubeList.add(new ModelBox(Body, 0, 16, -4.0F, 0.0F, -2.0F, 8, 12, 4, 0.5F));

		Backplate = new ModelRenderer(this);
		Backplate.setRotationPoint(0.0F, 0.0F, 0.0F);
		bipedBody.addChild(Backplate);
		Backplate.cubeList.add(new ModelBox(Backplate, 22, 4, -5.0F, -1.05F, 2.8F, 10, 8, 0, 0.0F));

		FrontPlate = new ModelRenderer(this);
		FrontPlate.setRotationPoint(0.0F, 0.0F, 0.0F);
		bipedBody.addChild(FrontPlate);
		FrontPlate.cubeList.add(new ModelBox(FrontPlate, 32, 4, -5.0F, -1.05F, -2.8F, 10, 8, 0, 0.0F));

		LeftArm = new ModelRenderer(this);
		LeftArm.setRotationPoint(-1.0F, -2.0F, -2.0F);
		bipedLeftArm.addChild(LeftArm);
		LeftArm.cubeList.add(new ModelBox(LeftArm, 25, 35, 0.0F, 0.0F, 0.0F, 4, 12, 4, 0.5F));

		PauldronLeft = new ModelRenderer(this);
		PauldronLeft.setRotationPoint(0.0F, 0.0F, 0.0F);
		LeftArm.addChild(PauldronLeft);
		setRotationAngle(PauldronLeft, 0.0F, 0.0F, 0.0873F);
		PauldronLeft.cubeList.add(new ModelBox(PauldronLeft, 40, 47, -0.5F, -1.4F, -1.0F, 6, 6, 6, 0.0F));

		PauldronTopperLeft = new ModelRenderer(this);
		PauldronTopperLeft.setRotationPoint(0.0F, 0.0F, 0.0F);
		LeftArm.addChild(PauldronTopperLeft);
		setRotationAngle(PauldronTopperLeft, 0.0F, 0.0F, 0.0873F);
		PauldronTopperLeft.cubeList.add(new ModelBox(PauldronTopperLeft, 48, 8, 0.5F, -3.4F, -2.0F, 0, 4, 8, 0.0F));

		RightArm = new ModelRenderer(this);
		RightArm.setRotationPoint(-1.0F, -2.0F, -2.0F);
		bipedRightArm.addChild(RightArm);
		RightArm.cubeList.add(new ModelBox(RightArm, 24, 16, -2.0F, 0.0F, 0.0F, 4, 12, 4, 0.5F));

		PauldronRight = new ModelRenderer(this);
		PauldronRight.setRotationPoint(0.0F, 0.0F, 0.0F);
		RightArm.addChild(PauldronRight);
		setRotationAngle(PauldronRight, 0.0F, 0.0F, -0.0873F);
		PauldronRight.cubeList.add(new ModelBox(PauldronRight, 40, 20, -3.5F, -1.4F, -1.0F, 6, 6, 6, 0.0F));

		PauldronTopperRight = new ModelRenderer(this);
		PauldronTopperRight.setRotationPoint(0.0F, 0.0F, 0.0F);
		RightArm.addChild(PauldronTopperRight);
		setRotationAngle(PauldronTopperRight, 0.0F, 0.0F, -0.0873F);
		PauldronTopperRight.cubeList.add(new ModelBox(PauldronTopperRight, 48, 8, 1.5F, -3.4F, -2.0F, 0, 4, 8, 0.0F));
	}

	@Override
	public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
		this.bipedBody.render(f5);
		this.bipedLeftArm.render(f5);
		this.bipedRightArm.render(f5);
	}

	public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) {
		modelRenderer.rotateAngleX = x;
		modelRenderer.rotateAngleY = y;
		modelRenderer.rotateAngleZ = z;
	}
}
