001    package net.minecraft.src;
002    
003    import cpw.mods.fml.common.Side;
004    import cpw.mods.fml.common.asm.SideOnly;
005    import org.lwjgl.opengl.GL11;
006    
007    @SideOnly(Side.CLIENT)
008    public class TileEntityMobSpawnerRenderer extends TileEntitySpecialRenderer
009    {
010        /**
011         * Associate a TileEntityRenderer with this TileEntitySpecialRenderer
012         */
013        public void setTileEntityRenderer(TileEntityRenderer par1TileEntityRenderer)
014        {
015            super.setTileEntityRenderer(par1TileEntityRenderer);
016        }
017    
018        public void renderTileEntityMobSpawner(TileEntityMobSpawner par1TileEntityMobSpawner, double par2, double par4, double par6, float par8)
019        {
020            GL11.glPushMatrix();
021            GL11.glTranslatef((float)par2 + 0.5F, (float)par4, (float)par6 + 0.5F);
022            Entity var9 = par1TileEntityMobSpawner.getMobEntity();
023    
024            if (var9 != null)
025            {
026                var9.setWorld(par1TileEntityMobSpawner.func_70314_l());
027                float var10 = 0.4375F;
028                GL11.glTranslatef(0.0F, 0.4F, 0.0F);
029                GL11.glRotatef((float)(par1TileEntityMobSpawner.yaw2 + (par1TileEntityMobSpawner.yaw - par1TileEntityMobSpawner.yaw2) * (double)par8) * 10.0F, 0.0F, 1.0F, 0.0F);
030                GL11.glRotatef(-30.0F, 1.0F, 0.0F, 0.0F);
031                GL11.glTranslatef(0.0F, -0.4F, 0.0F);
032                GL11.glScalef(var10, var10, var10);
033                var9.setLocationAndAngles(par2, par4, par6, 0.0F, 0.0F);
034                RenderManager.instance.renderEntityWithPosYaw(var9, 0.0D, 0.0D, 0.0D, 0.0F, par8);
035            }
036    
037            GL11.glPopMatrix();
038        }
039    
040        public void renderTileEntityAt(TileEntity par1TileEntity, double par2, double par4, double par6, float par8)
041        {
042            this.renderTileEntityMobSpawner((TileEntityMobSpawner)par1TileEntity, par2, par4, par6, par8);
043        }
044    }