public int getItemIcon(ItemStack par1ItemStack, int par2)
    {
        int var3 = super.getItemIcon(par1ItemStack, par2);

        if (par1ItemStack.itemID == Item.fishingRod.shiftedIndex && this.fishEntity != null)
        {
            var3 = par1ItemStack.getIconIndex() + 16;
        }
        else
        {
            if (par1ItemStack.getItem().func_46058_c())
            {
                return par1ItemStack.getItem().func_46057_a(par1ItemStack.getItemDamage(), par2);
            }

            if (this.itemInUse != null && par1ItemStack.itemID == Item.bow.shiftedIndex)
            {
                int var4 = par1ItemStack.getMaxItemUseDuration() - this.itemInUseCount;

                if (var4 >= 18)
                {
                    return 133;
                }

                if (var4 > 13)
                {
                    return 117;
                }

                if (var4 > 0)
                {
                    return 101;
                }
            }
            var3 = par1ItemStack.getItem().getIconIndex(par1ItemStack, par2, this, itemInUse, itemInUseCount);
        }

        return var3;
    }