001    package net.minecraft.src;
002    
003    import cpw.mods.fml.common.Side;
004    import cpw.mods.fml.common.asm.SideOnly;
005    
006    @SideOnly(Side.CLIENT)
007    public class RenderSilverfish extends RenderLiving
008    {
009        public RenderSilverfish()
010        {
011            super(new ModelSilverfish(), 0.3F);
012        }
013    
014        /**
015         * Return the silverfish's maximum death rotation.
016         */
017        protected float getSilverfishDeathRotation(EntitySilverfish par1EntitySilverfish)
018        {
019            return 180.0F;
020        }
021    
022        /**
023         * Renders the silverfish.
024         */
025        public void renderSilverfish(EntitySilverfish par1EntitySilverfish, double par2, double par4, double par6, float par8, float par9)
026        {
027            super.doRenderLiving(par1EntitySilverfish, par2, par4, par6, par8, par9);
028        }
029    
030        /**
031         * Disallows the silverfish to render the renderPassModel.
032         */
033        protected int shouldSilverfishRenderPass(EntitySilverfish par1EntitySilverfish, int par2, float par3)
034        {
035            return -1;
036        }
037    
038        protected float getDeathMaxRotation(EntityLiving par1EntityLiving)
039        {
040            return this.getSilverfishDeathRotation((EntitySilverfish)par1EntityLiving);
041        }
042    
043        /**
044         * Queries whether should render the specified pass or not.
045         */
046        protected int shouldRenderPass(EntityLiving par1EntityLiving, int par2, float par3)
047        {
048            return this.shouldSilverfishRenderPass((EntitySilverfish)par1EntityLiving, par2, par3);
049        }
050    
051        public void doRenderLiving(EntityLiving par1EntityLiving, double par2, double par4, double par6, float par8, float par9)
052        {
053            this.renderSilverfish((EntitySilverfish)par1EntityLiving, par2, par4, par6, par8, par9);
054        }
055    
056        /**
057         * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then
058         * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic
059         * (Render<T extends Entity) and this method has signature public void doRender(T entity, double d, double d1,
060         * double d2, float f, float f1). But JAD is pre 1.5 so doesn't do that.
061         */
062        public void doRender(Entity par1Entity, double par2, double par4, double par6, float par8, float par9)
063        {
064            this.renderSilverfish((EntitySilverfish)par1Entity, par2, par4, par6, par8, par9);
065        }
066    }