Esempio n. 1
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);

            if (this.isChild)
            {
                float f = 2.0F;
                GlStateManager.pushMatrix();
                GlStateManager.translate(0.0F, 5.0F * scale, 2.0F * scale);
                this.head.render(scale);
                this.bill.render(scale);
                this.chin.render(scale);
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                GlStateManager.scale(1.0F / f, 1.0F / f, 1.0F / f);
                GlStateManager.translate(0.0F, 24.0F * scale, 0.0F);
                this.body.render(scale);
                this.rightLeg.render(scale);
                this.leftLeg.render(scale);
                this.rightWing.render(scale);
                this.leftWing.render(scale);
                GlStateManager.popMatrix();
            }
            else
            {
                this.head.render(scale);
                this.bill.render(scale);
                this.chin.render(scale);
                this.body.render(scale);
                this.rightLeg.render(scale);
                this.leftLeg.render(scale);
                this.rightWing.render(scale);
                this.leftWing.render(scale);
            }
        }
Esempio n. 2
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);

            if (this.isChild)
            {
                float f = 2.0F;
                GlStateManager.pushMatrix();
                GlStateManager.translate(0.0F, this.childYOffset * scale, this.childZOffset * scale);
                this.head.render(scale);
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                GlStateManager.scale(1.0F / f, 1.0F / f, 1.0F / f);
                GlStateManager.translate(0.0F, 24.0F * scale, 0.0F);
                this.body.render(scale);
                this.leg1.render(scale);
                this.leg2.render(scale);
                this.leg3.render(scale);
                this.leg4.render(scale);
                GlStateManager.popMatrix();
            }
            else
            {
                this.head.render(scale);
                this.body.render(scale);
                this.leg1.render(scale);
                this.leg2.render(scale);
                this.leg3.render(scale);
                this.leg4.render(scale);
            }
        }
Esempio n. 3
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            super.render(entityIn, p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale);
            GlStateManager.pushMatrix();

            if (this.isChild)
            {
                float f = 2.0F;
                GlStateManager.scale(1.0F / f, 1.0F / f, 1.0F / f);
                GlStateManager.translate(0.0F, 24.0F * scale, 0.0F);
                this.standRightSide.render(scale);
                this.standLeftSide.render(scale);
                this.standWaist.render(scale);
                this.standBase.render(scale);
            }
            else
            {
                if (entityIn.isSneaking())
                {
                    GlStateManager.translate(0.0F, 0.2F, 0.0F);
                }

                this.standRightSide.render(scale);
                this.standLeftSide.render(scale);
                this.standWaist.render(scale);
                this.standBase.render(scale);
            }

            GlStateManager.popMatrix();
        }
Esempio n. 4
0
            public void renderWithRotation(float p_78791_1_)
            {
                if (!this.isHidden)
                {
                    if (this.showModel)
                    {
                        if (!this.compiled)
                        {
                            this.compileDisplayList(p_78791_1_);
                        }

                        GlStateManager.pushMatrix();
                        GlStateManager.translate(this.rotationPointX * p_78791_1_, this.rotationPointY * p_78791_1_, this.rotationPointZ * p_78791_1_);

                        if (this.rotateAngleY != 0.0F)
                        {
                            GlStateManager.rotate(this.rotateAngleY * (180F / (float)Math.PI), 0.0F, 1.0F, 0.0F);
                        }

                        if (this.rotateAngleX != 0.0F)
                        {
                            GlStateManager.rotate(this.rotateAngleX * (180F / (float)Math.PI), 1.0F, 0.0F, 0.0F);
                        }

                        if (this.rotateAngleZ != 0.0F)
                        {
                            GlStateManager.rotate(this.rotateAngleZ * (180F / (float)Math.PI), 0.0F, 0.0F, 1.0F);
                        }

                        GlStateManager.callList(this.displayList);
                        GlStateManager.popMatrix();
                    }
                }
            }
Esempio n. 5
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            GlStateManager.pushMatrix();
            GlStateManager.scale(2.0F, 2.0F, 2.0F);
            GlStateManager.translate(0.0F, -0.5F, 0.0F);

            if (this.base != null)
            {
                this.base.render(scale);
            }

            GlStateManager.rotate(p_78088_3_, 0.0F, 1.0F, 0.0F);
            GlStateManager.translate(0.0F, 0.8F + p_78088_4_, 0.0F);
            GlStateManager.rotate(60.0F, 0.7071F, 0.0F, 0.7071F);
            this.glass.render(scale);
            float f = 0.875F;

            GlStateManager.scale(f, f, f);
            GlStateManager.rotate(60.0F, 0.7071F, 0.0F, 0.7071F);
            GlStateManager.rotate(p_78088_3_, 0.0F, 1.0F, 0.0F);
            this.glass.render(scale);
            GlStateManager.scale(f, f, f);
            GlStateManager.rotate(60.0F, 0.7071F, 0.0F, 0.7071F);
            GlStateManager.rotate(p_78088_3_, 0.0F, 1.0F, 0.0F);
            this.cube.render(scale);
            GlStateManager.popMatrix();
        }
Esempio n. 6
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            super.render(entityIn, p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale);
            GlStateManager.pushMatrix();

            if (this.isChild)
            {
                float f = 2.0F;
                GlStateManager.scale(1.0F / f, 1.0F / f, 1.0F / f);
                GlStateManager.translate(0.0F, 24.0F * scale, 0.0F);
                this.bipedLeftLegwear.render(scale);
                this.bipedRightLegwear.render(scale);
                this.bipedLeftArmwear.render(scale);
                this.bipedRightArmwear.render(scale);
                this.bipedBodyWear.render(scale);
            }
            else
            {
                if (entityIn.isSneaking())
                {
                    GlStateManager.translate(0.0F, 0.2F, 0.0F);
                }

                this.bipedLeftLegwear.render(scale);
                this.bipedRightLegwear.render(scale);
                this.bipedLeftArmwear.render(scale);
                this.bipedRightArmwear.render(scale);
                this.bipedBodyWear.render(scale);
            }

            GlStateManager.popMatrix();
        }
Esempio n. 7
0
 /**
  * Sets the models various rotation angles then renders the model.
  */
 public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
 {
     GlStateManager.disableRescaleNormal();
     GlStateManager.disableCull();
     this.field_187061_b.render(scale);
     this.field_187060_a.render(scale);
 }
Esempio n. 8
0
 public void func_187054_b(Entity p_187054_1_, float p_187054_2_, float p_187054_3_, float p_187054_4_, float p_187054_5_, float p_187054_6_, float p_187054_7_)
 {
     GlStateManager.rotate(90.0F, 0.0F, 1.0F, 0.0F);
     GlStateManager.colorMask(false, false, false, false);
     this.field_187058_c.render(p_187054_7_);
     GlStateManager.colorMask(true, true, true, true);
 }
Esempio n. 9
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);
            GlStateManager.translate(0.0F, 0.001F, 0.0F);
            this.slimeBodies.render(scale);

            if (this.slimeRightEye != null)
            {
                this.slimeRightEye.render(scale);
                this.slimeLeftEye.render(scale);
                this.slimeMouth.render(scale);
            }
        }
Esempio n. 10
0
            /**
             * Compiles a GL display list for this model
             */
            private void compileDisplayList(float scale)
            {
                this.displayList = GLAllocation.generateDisplayLists(1);
                GlStateManager.glNewList(this.displayList, 4864);
                VertexBuffer vertexbuffer = Tessellator.getInstance().getBuffer();

                for (int i = 0; i < this.cubeList.size(); ++i)
                {
                    ((ModelBox)this.cubeList.get(i)).render(vertexbuffer, scale);
                }

                GlStateManager.glEndList();
                this.compiled = true;
            }
Esempio n. 11
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);
            GlStateManager.pushMatrix();
            GlStateManager.translate(0.0F, 0.6F, 0.0F);
            this.body.render(scale);

            for (ModelRenderer modelrenderer : this.tentacles)
            {
                modelrenderer.render(scale);
            }

            GlStateManager.popMatrix();
        }
Esempio n. 12
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            GlStateManager.rotate(90.0F, 0.0F, 1.0F, 0.0F);
            EntityBoat entityboat = (EntityBoat)entityIn;

            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);

            for (int i = 0; i < 5; ++i)
            {
                this.boatSides[i].render(scale);
            }

            this.func_187055_a(entityboat, 0, scale, p_78088_2_);
            this.func_187055_a(entityboat, 1, scale, p_78088_2_);
        }
Esempio n. 13
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);

            if (this.isChild)
            {
                float f = 1.5F;
                GlStateManager.pushMatrix();
                GlStateManager.scale(0.85F / f, 0.85F / f, 0.85F / f);
                GlStateManager.translate(0.0F, 22.0F * scale, 2.0F * scale);
                this.rabbitHead.render(scale);
                this.rabbitLeftEar.render(scale);
                this.rabbitRightEar.render(scale);
                this.rabbitNose.render(scale);
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                GlStateManager.scale(0.6F / f, 0.6F / f, 0.6F / f);
                GlStateManager.translate(0.0F, 36.0F * scale, 0.0F);
                this.rabbitLeftFoot.render(scale);
                this.rabbitRightFoot.render(scale);
                this.rabbitLeftThigh.render(scale);
                this.rabbitRightThigh.render(scale);
                this.rabbitBody.render(scale);
                this.rabbitLeftArm.render(scale);
                this.rabbitRightArm.render(scale);
                this.rabbitTail.render(scale);
                GlStateManager.popMatrix();
            }
            else
            {
                GlStateManager.pushMatrix();
                GlStateManager.scale(0.6F, 0.6F, 0.6F);
                GlStateManager.translate(0.0F, 16.0F * scale, 0.0F);
                this.rabbitLeftFoot.render(scale);
                this.rabbitRightFoot.render(scale);
                this.rabbitLeftThigh.render(scale);
                this.rabbitRightThigh.render(scale);
                this.rabbitBody.render(scale);
                this.rabbitLeftArm.render(scale);
                this.rabbitRightArm.render(scale);
                this.rabbitHead.render(scale);
                this.rabbitRightEar.render(scale);
                this.rabbitLeftEar.render(scale);
                this.rabbitTail.render(scale);
                this.rabbitNose.render(scale);
                GlStateManager.popMatrix();
            }
        }
Esempio n. 14
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);
            GlStateManager.pushMatrix();

            if (this.isChild)
            {
                float f = 2.0F;
                GlStateManager.scale(1.5F / f, 1.5F / f, 1.5F / f);
                GlStateManager.translate(0.0F, 16.0F * scale, 0.0F);
                this.bipedHead.render(scale);
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                GlStateManager.scale(1.0F / f, 1.0F / f, 1.0F / f);
                GlStateManager.translate(0.0F, 24.0F * scale, 0.0F);
                this.bipedBody.render(scale);
                this.bipedRightArm.render(scale);
                this.bipedLeftArm.render(scale);
                this.bipedRightLeg.render(scale);
                this.bipedLeftLeg.render(scale);
                this.bipedHeadwear.render(scale);
            }
            else
            {
                if (entityIn.isSneaking())
                {
                    GlStateManager.translate(0.0F, 0.2F, 0.0F);
                }

                this.bipedHead.render(scale);
                this.bipedBody.render(scale);
                this.bipedRightArm.render(scale);
                this.bipedLeftArm.render(scale);
                this.bipedRightLeg.render(scale);
                this.bipedLeftLeg.render(scale);
                this.bipedHeadwear.render(scale);
            }

            GlStateManager.popMatrix();
        }
Esempio n. 15
0
            /**
             * Allows the changing of Angles after a box has been rendered
             */
            public void postRender(float scale)
            {
                if (!this.isHidden)
                {
                    if (this.showModel)
                    {
                        if (!this.compiled)
                        {
                            this.compileDisplayList(scale);
                        }

                        if (this.rotateAngleX == 0.0F && this.rotateAngleY == 0.0F && this.rotateAngleZ == 0.0F)
                        {
                            if (this.rotationPointX != 0.0F || this.rotationPointY != 0.0F || this.rotationPointZ != 0.0F)
                            {
                                GlStateManager.translate(this.rotationPointX * scale, this.rotationPointY * scale, this.rotationPointZ * scale);
                            }
                        }
                        else
                        {
                            GlStateManager.translate(this.rotationPointX * scale, this.rotationPointY * scale, this.rotationPointZ * scale);

                            if (this.rotateAngleZ != 0.0F)
                            {
                                GlStateManager.rotate(this.rotateAngleZ * (180F / (float)Math.PI), 0.0F, 0.0F, 1.0F);
                            }

                            if (this.rotateAngleY != 0.0F)
                            {
                                GlStateManager.rotate(this.rotateAngleY * (180F / (float)Math.PI), 0.0F, 1.0F, 0.0F);
                            }

                            if (this.rotateAngleX != 0.0F)
                            {
                                GlStateManager.rotate(this.rotateAngleX * (180F / (float)Math.PI), 1.0F, 0.0F, 0.0F);
                            }
                        }
                    }
                }
            }
Esempio n. 16
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            super.render(entityIn, p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale);
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);

            if (this.isChild)
            {
                float f = 2.0F;
                GlStateManager.pushMatrix();
                GlStateManager.translate(0.0F, 5.0F * scale, 2.0F * scale);
                this.wolfHeadMain.renderWithRotation(scale);
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                GlStateManager.scale(1.0F / f, 1.0F / f, 1.0F / f);
                GlStateManager.translate(0.0F, 24.0F * scale, 0.0F);
                this.wolfBody.render(scale);
                this.wolfLeg1.render(scale);
                this.wolfLeg2.render(scale);
                this.wolfLeg3.render(scale);
                this.wolfLeg4.render(scale);
                this.wolfTail.renderWithRotation(scale);
                this.wolfMane.render(scale);
                GlStateManager.popMatrix();
            }
            else
            {
                this.wolfHeadMain.renderWithRotation(scale);
                this.wolfBody.render(scale);
                this.wolfLeg1.render(scale);
                this.wolfLeg2.render(scale);
                this.wolfLeg3.render(scale);
                this.wolfLeg4.render(scale);
                this.wolfTail.renderWithRotation(scale);
                this.wolfMane.render(scale);
            }
        }
Esempio n. 17
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            this.setRotationAngles(p_78088_2_, p_78088_3_, p_78088_4_, p_78088_5_, p_78088_6_, scale, entityIn);

            if (this.isChild)
            {
                float f = 2.0F;
                GlStateManager.pushMatrix();
                GlStateManager.scale(1.5F / f, 1.5F / f, 1.5F / f);
                GlStateManager.translate(0.0F, 10.0F * scale, 4.0F * scale);
                this.ocelotHead.render(scale);
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                GlStateManager.scale(1.0F / f, 1.0F / f, 1.0F / f);
                GlStateManager.translate(0.0F, 24.0F * scale, 0.0F);
                this.ocelotBody.render(scale);
                this.ocelotBackLeftLeg.render(scale);
                this.ocelotBackRightLeg.render(scale);
                this.ocelotFrontLeftLeg.render(scale);
                this.ocelotFrontRightLeg.render(scale);
                this.ocelotTail.render(scale);
                this.ocelotTail2.render(scale);
                GlStateManager.popMatrix();
            }
            else
            {
                this.ocelotHead.render(scale);
                this.ocelotBody.render(scale);
                this.ocelotTail.render(scale);
                this.ocelotTail2.render(scale);
                this.ocelotBackLeftLeg.render(scale);
                this.ocelotBackRightLeg.render(scale);
                this.ocelotFrontLeftLeg.render(scale);
                this.ocelotFrontRightLeg.render(scale);
            }
        }
Esempio n. 18
0
            public void render(float p_78785_1_)
            {
                if (!this.isHidden)
                {
                    if (this.showModel)
                    {
                        if (!this.compiled)
                        {
                            this.compileDisplayList(p_78785_1_);
                        }

                        GlStateManager.translate(this.offsetX, this.offsetY, this.offsetZ);

                        if (this.rotateAngleX == 0.0F && this.rotateAngleY == 0.0F && this.rotateAngleZ == 0.0F)
                        {
                            if (this.rotationPointX == 0.0F && this.rotationPointY == 0.0F && this.rotationPointZ == 0.0F)
                            {
                                GlStateManager.callList(this.displayList);

                                if (this.childModels != null)
                                {
                                    for (int k = 0; k < this.childModels.size(); ++k)
                                    {
                                        ((ModelRenderer)this.childModels.get(k)).render(p_78785_1_);
                                    }
                                }
                            }
                            else
                            {
                                GlStateManager.translate(this.rotationPointX * p_78785_1_, this.rotationPointY * p_78785_1_, this.rotationPointZ * p_78785_1_);
                                GlStateManager.callList(this.displayList);

                                if (this.childModels != null)
                                {
                                    for (int j = 0; j < this.childModels.size(); ++j)
                                    {
                                        ((ModelRenderer)this.childModels.get(j)).render(p_78785_1_);
                                    }
                                }

                                GlStateManager.translate(-this.rotationPointX * p_78785_1_, -this.rotationPointY * p_78785_1_, -this.rotationPointZ * p_78785_1_);
                            }
                        }
                        else
                        {
                            GlStateManager.pushMatrix();
                            GlStateManager.translate(this.rotationPointX * p_78785_1_, this.rotationPointY * p_78785_1_, this.rotationPointZ * p_78785_1_);

                            if (this.rotateAngleZ != 0.0F)
                            {
                                GlStateManager.rotate(this.rotateAngleZ * (180F / (float)Math.PI), 0.0F, 0.0F, 1.0F);
                            }

                            if (this.rotateAngleY != 0.0F)
                            {
                                GlStateManager.rotate(this.rotateAngleY * (180F / (float)Math.PI), 0.0F, 1.0F, 0.0F);
                            }

                            if (this.rotateAngleX != 0.0F)
                            {
                                GlStateManager.rotate(this.rotateAngleX * (180F / (float)Math.PI), 1.0F, 0.0F, 0.0F);
                            }

                            GlStateManager.callList(this.displayList);

                            if (this.childModels != null)
                            {
                                for (int i = 0; i < this.childModels.size(); ++i)
                                {
                                    ((ModelRenderer)this.childModels.get(i)).render(p_78785_1_);
                                }
                            }

                            GlStateManager.popMatrix();
                        }

                        GlStateManager.translate(-this.offsetX, -this.offsetY, -this.offsetZ);
                    }
                }
            }
Esempio n. 19
0
        /**
         * Sets the models various rotation angles then renders the model.
         */
        public void render(Entity entityIn, float p_78088_2_, float p_78088_3_, float p_78088_4_, float p_78088_5_, float p_78088_6_, float scale)
        {
            EntityHorse    entityhorse    = (EntityHorse)entityIn;
            HorseArmorType horsearmortype = entityhorse.getType();
            float          f     = entityhorse.getGrassEatingAmount(0.0F);
            boolean        flag  = entityhorse.isAdultHorse();
            boolean        flag1 = flag && entityhorse.isHorseSaddled();
            boolean        flag2 = flag && entityhorse.isChested();
            boolean        flag3 = horsearmortype.func_188601_g();
            float          f1    = entityhorse.getHorseSize();
            boolean        flag4 = entityhorse.isBeingRidden();

            if (flag1)
            {
                this.horseFaceRopes.render(scale);
                this.horseSaddleBottom.render(scale);
                this.horseSaddleFront.render(scale);
                this.horseSaddleBack.render(scale);
                this.horseLeftSaddleRope.render(scale);
                this.horseLeftSaddleMetal.render(scale);
                this.horseRightSaddleRope.render(scale);
                this.horseRightSaddleMetal.render(scale);
                this.horseLeftFaceMetal.render(scale);
                this.horseRightFaceMetal.render(scale);

                if (flag4)
                {
                    this.horseLeftRein.render(scale);
                    this.horseRightRein.render(scale);
                }
            }

            if (!flag)
            {
                GlStateManager.pushMatrix();
                GlStateManager.scale(f1, 0.5F + f1 * 0.5F, f1);
                GlStateManager.translate(0.0F, 0.95F * (1.0F - f1), 0.0F);
            }

            this.backLeftLeg.render(scale);
            this.backLeftShin.render(scale);
            this.backLeftHoof.render(scale);
            this.backRightLeg.render(scale);
            this.backRightShin.render(scale);
            this.backRightHoof.render(scale);
            this.frontLeftLeg.render(scale);
            this.frontLeftShin.render(scale);
            this.frontLeftHoof.render(scale);
            this.frontRightLeg.render(scale);
            this.frontRightShin.render(scale);
            this.frontRightHoof.render(scale);

            if (!flag)
            {
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                GlStateManager.scale(f1, f1, f1);
                GlStateManager.translate(0.0F, 1.35F * (1.0F - f1), 0.0F);
            }

            this.body.render(scale);
            this.tailBase.render(scale);
            this.tailMiddle.render(scale);
            this.tailTip.render(scale);
            this.neck.render(scale);
            this.mane.render(scale);

            if (!flag)
            {
                GlStateManager.popMatrix();
                GlStateManager.pushMatrix();
                float f2 = 0.5F + f1 * f1 * 0.5F;
                GlStateManager.scale(f2, f2, f2);

                if (f <= 0.0F)
                {
                    GlStateManager.translate(0.0F, 1.35F * (1.0F - f1), 0.0F);
                }
                else
                {
                    GlStateManager.translate(0.0F, 0.9F * (1.0F - f1) * f + 1.35F * (1.0F - f1) * (1.0F - f), 0.15F * (1.0F - f1) * f);
                }
            }

            if (flag3)
            {
                this.muleLeftEar.render(scale);
                this.muleRightEar.render(scale);
            }
            else
            {
                this.horseLeftEar.render(scale);
                this.horseRightEar.render(scale);
            }

            this.head.render(scale);

            if (!flag)
            {
                GlStateManager.popMatrix();
            }

            if (flag2)
            {
                this.muleLeftChest.render(scale);
                this.muleRightChest.render(scale);
            }
        }