    001package net.minecraft.item;
    002
    003import cpw.mods.fml.relauncher.Side;
    004import cpw.mods.fml.relauncher.SideOnly;
    005import net.minecraft.block.Block;
    006import net.minecraft.block.BlockLeaves;
    007import net.minecraft.world.ColorizerFoliage;
    008
    009public class ItemLeaves extends ItemBlock
    010{
    011    public ItemLeaves(int par1)
    012    {
    013        super(par1);
    014        this.setMaxDamage(0);
    015        this.setHasSubtypes(true);
    016    }
    017
    018    /**
    019     * Returns the metadata of the block which this Item (ItemBlock) can place
    020     */
    021    public int getMetadata(int par1)
    022    {
    023        return par1 | 4;
    024    }
    025
    026    @SideOnly(Side.CLIENT)
    027
    028    /**
    029     * Gets an icon index based on an item's damage value
    030     */
    031    public int getIconFromDamage(int par1)
    032    {
    033        return Block.leaves.getBlockTextureFromSideAndMetadata(0, par1);
    034    }
    035
    036    @SideOnly(Side.CLIENT)
    037    public int getColorFromItemStack(ItemStack par1ItemStack, int par2)
    038    {
    039        int var3 = par1ItemStack.getItemDamage();
    040        return (var3 & 1) == 1 ? ColorizerFoliage.getFoliageColorPine() : ((var3 & 2) == 2 ? ColorizerFoliage.getFoliageColorBirch() : ColorizerFoliage.getFoliageColorBasic());
    041    }
    042
    043    public String getItemNameIS(ItemStack par1ItemStack)
    044    {
    045        int var2 = par1ItemStack.getItemDamage();
    046
    047        if (var2 < 0 || var2 >= BlockLeaves.LEAF_TYPES.length)
    048        {
    049            var2 = 0;
    050        }
    051
    052        return super.getItemName() + "." + BlockLeaves.LEAF_TYPES[var2];
    053    }
    054}