    001package net.minecraft.client.model;
    002
    003import cpw.mods.fml.relauncher.Side;
    004import cpw.mods.fml.relauncher.SideOnly;
    005import net.minecraft.entity.Entity;
    006import net.minecraft.entity.EntityLiving;
    007import net.minecraft.entity.monster.EntitySkeleton;
    008
    009@SideOnly(Side.CLIENT)
    010public class ModelSkeleton extends ModelZombie
    011{
    012    public ModelSkeleton()
    013    {
    014        this(0.0F);
    015    }
    016
    017    public ModelSkeleton(float par1)
    018    {
    019        super(par1, 0.0F, 64, 32);
    020        this.bipedRightArm = new ModelRenderer(this, 40, 16);
    021        this.bipedRightArm.addBox(-1.0F, -2.0F, -1.0F, 2, 12, 2, par1);
    022        this.bipedRightArm.setRotationPoint(-5.0F, 2.0F, 0.0F);
    023        this.bipedLeftArm = new ModelRenderer(this, 40, 16);
    024        this.bipedLeftArm.mirror = true;
    025        this.bipedLeftArm.addBox(-1.0F, -2.0F, -1.0F, 2, 12, 2, par1);
    026        this.bipedLeftArm.setRotationPoint(5.0F, 2.0F, 0.0F);
    027        this.bipedRightLeg = new ModelRenderer(this, 0, 16);
    028        this.bipedRightLeg.addBox(-1.0F, 0.0F, -1.0F, 2, 12, 2, par1);
    029        this.bipedRightLeg.setRotationPoint(-2.0F, 12.0F, 0.0F);
    030        this.bipedLeftLeg = new ModelRenderer(this, 0, 16);
    031        this.bipedLeftLeg.mirror = true;
    032        this.bipedLeftLeg.addBox(-1.0F, 0.0F, -1.0F, 2, 12, 2, par1);
    033        this.bipedLeftLeg.setRotationPoint(2.0F, 12.0F, 0.0F);
    034    }
    035
    036    /**
    037     * Used for easily adding entity-dependent animations. The second and third float params here are the same second
    038     * and third as in the setRotationAngles method.
    039     */
    040    public void setLivingAnimations(EntityLiving par1EntityLiving, float par2, float par3, float par4)
    041    {
    042        this.aimedBow = ((EntitySkeleton)par1EntityLiving).getSkeletonType() == 1;
    043        super.setLivingAnimations(par1EntityLiving, par2, par3, par4);
    044    }
    045
    046    /**
    047     * Sets the model's various rotation angles. For bipeds, par1 and par2 are used for animating the movement of arms
    048     * and legs, where par1 represents the time(so that arms and legs swing back and forth) and par2 represents how
    049     * "far" arms and legs can swing at most.
    050     */
    051    public void setRotationAngles(float par1, float par2, float par3, float par4, float par5, float par6, Entity par7Entity)
    052    {
    053        super.setRotationAngles(par1, par2, par3, par4, par5, par6, par7Entity);
    054    }
    055}