net.minecraft.block

## Class BlockLeaves

- java.lang.Object
- - net.minecraft.block.Block
  - - net.minecraft.block.BlockLeavesBase
    - - net.minecraft.block.BlockLeaves

- All Implemented Interfaces:
    IShearable

      public class BlockLeaves
      extends BlockLeavesBase
      implements IShearable

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String[][]` | `field_94396_b`
    `static String[]` | `LEAF_TYPES`

    - ### Fields inherited from class net.minecraft.block.BlockLeavesBase

      `graphicsLevel`

    - ### Fields inherited from class net.minecraft.block.Block

      `anvil, beacon, bed, bedrock, blockClay, blockDiamond, blockEmerald, blockGold, blockHardness, blockID, blockIron, blockLapis, blockMaterial, blockNetherQuartz, blockParticleGravity, blockRedstone, blockResistance, blocksList, blockSnow, bookShelf, brewingStand, brick, cactus, cake, canBlockGrass, carpet, carrot, cauldron, chest, chestTrapped, cloth, coalBlock, cobblestone, cobblestoneMossy, cobblestoneWall, cocoaPlant, commandBlock, crops, daylightSensor, deadBush, dirt, dispenser, doorIron, doorWood, dragonEgg, dropper, enchantmentTable, enderChest, endPortal, endPortalFrame, fence, fenceGate, fenceIron, fire, flowerPot, furnaceBurning, furnaceIdle, glass, glowStone, grass, gravel, hardenedClay, hay, hopperBlock, ice, jukebox, ladder, lavaMoving, lavaStill, leaves, lever, lightOpacity, lightValue, lockedChest, melon, melonStem, mobSpawner, mushroomBrown, mushroomCapBrown, mushroomCapRed, mushroomRed, music, mycelium, netherBrick, netherFence, netherrack, netherStalk, obsidian, opaqueCubeLookup, oreCoal, oreDiamond, oreEmerald, oreGold, oreIron, oreLapis, oreNetherQuartz, oreRedstone, oreRedstoneGlowing, pistonBase, pistonExtension, pistonMoving, pistonStickyBase, planks, plantRed, plantYellow, portal, potato, pressurePlateGold, pressurePlateIron, pressurePlatePlanks, pressurePlateStone, pumpkin, pumpkinLantern, pumpkinStem, rail, railActivator, railDetector, railPowered, redstoneComparatorActive, redstoneComparatorIdle, redstoneLampActive, redstoneLampIdle, redstoneRepeaterActive, redstoneRepeaterIdle, redstoneWire, reed, sand, sandStone, sapling, signPost, signWall, silverfish, skull, slipperiness, slowSand, snow, soundAnvilFootstep, soundClothFootstep, soundGlassFootstep, soundGrassFootstep, soundGravelFootstep, soundLadderFootstep, soundMetalFootstep, soundPowderFootstep, soundSandFootstep, soundSnowFootstep, soundStoneFootstep, soundWoodFootstep, sponge, stainedClay, stairsBrick, stairsCobblestone, stairsNetherBrick, stairsNetherQuartz, stairsSandStone, stairsStoneBrick, stairsWoodBirch, stairsWoodJungle, stairsWoodOak, stairsWoodSpruce, stepSound, stone, stoneBrick, stoneButton, stoneDoubleSlab, stoneSingleSlab, tallGrass, thinGlass, tilledField, tnt, torchRedstoneActive, torchRedstoneIdle, torchWood, trapdoor, tripWire, tripWireSource, useNeighborBrightness, vine, waterlily, waterMoving, waterStill, web, whiteStone, wood, woodDoubleSlab, woodenButton, woodSingleSlab, workbench`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `beginLeavesDecay(World world, int x, int y, int z)` Called when a leaf should start its decay process.
    `void` | `breakBlock(World par1World, int par2, int par3, int par4, int par5, int par6)` Called on server worlds only when the block has been replaced by a different block ID, or the same block with a different metadata value, but before the new metadata value is set.
    `int` | `colorMultiplier(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)`
    `int` | `damageDropped(int par1)` Determines the damage on the item the block drops.
    `void` | `dropBlockAsItemWithChance(World par1World, int par2, int par3, int par4, int par5, float par6, int par7)` Drops the block items with a specified chance of dropping the specified items
    `int` | `getBlockColor()`
    `Icon` | `getIcon(int par1, int par2)`
    `int` | `getRenderColor(int par1)`
    `void` | `getSubBlocks(int par1, CreativeTabs par2CreativeTabs, List par3List)`
    `void` | `harvestBlock(World par1World, EntityPlayer par2EntityPlayer, int par3, int par4, int par5, int par6)` Called when the player destroys a block with an item that can harvest it.
    `int` | `idDropped(int par1, Random par2Random, int par3)` Returns the ID of the items to drop on destruction.
    `boolean` | `isLeaves(World world, int x, int y, int z)` Determines if this block is considered a leaf block, used to apply the leaf decay and generation system.
    `boolean` | `isOpaqueCube()` Is this block (a) opaque and (b) a full 1m cube? This determines whether or not to render the shared face of two adjacent blocks and also whether the player can attach torches, redstone wire, etc to this block.
    `boolean` | `isShearable(ItemStack item, World world, int x, int y, int z)` Checks if the object is currently shearable Example: Sheep return false when they have no wool
    `ArrayList<ItemStack>` | `onSheared(ItemStack item, World world, int x, int y, int z, int fortune)` Performs the shear function on this object.
    `int` | `quantityDropped(Random par1Random)` Returns the quantity of items to drop on block destruction.
    `void` | `randomDisplayTick(World par1World, int par2, int par3, int par4, Random par5Random)`
    `void` | `registerIcons(IconRegister par1IconRegister)`
    `void` | `setGraphicsLevel(boolean par1)`
    `void` | `updateTick(World par1World, int par2, int par3, int par4, Random par5Random)` Ticks the block if it's been scheduled

    - ### Methods inherited from class net.minecraft.block.BlockLeavesBase

      `shouldSideBeRendered`

    - ### Methods inherited from class net.minecraft.block.Block

      `addBlockDestroyEffects, addBlockHitEffects, addCollisionBoxesToList, addCreativeItems, canBeReplacedByLeaves, canBlockStay, canCollideCheck, canConnectRedstone, canCreatureSpawn, canDragonDestroy, canDropFromExplosion, canEntityDestroy, canHarvestBlock, canPlaceBlockAt, canPlaceBlockOnSide, canPlaceBlockOnSide, canPlaceTorchOnTop, canProvidePower, canRenderInPass, canSilkHarvest, canSustainLeaves, canSustainPlant, collisionRayTrace, createTileEntity, dropBlockAsItem, dropXpOnBlockBreak, fillWithRain, func_82506_l, getAmbientOcclusionLightValue, getBedDirection, getBedSpawnPosition, getBlockBoundsMaxX, getBlockBoundsMaxY, getBlockBoundsMaxZ, getBlockBoundsMinX, getBlockBoundsMinY, getBlockBoundsMinZ, getBlockBrightness, getBlockDropped, getBlockHardness, getBlocksMovement, getBlockTexture, getBlockTextureFromSide, getCollisionBoundingBoxFromPool, getComparatorInputOverride, getCreativeTabToDisplayOn, getDamageValue, getEnableStats, getEnchantPowerBonus, getExpDrop, getExplosionResistance, getExplosionResistance, getFilledPercentage, getFireSpreadSpeed, getFlammability, getItemIconName, getLightOpacity, getLightValue, getLocalizedName, getMixedBrightnessForBlock, getMobilityFlag, getPickBlock, getPlayerRelativeBlockHardness, getRenderBlockPass, getRenderType, getSelectedBoundingBoxFromPool, getTickRandomly, getUnlocalizedName, getValidRotations, hasComparatorInputOverride, hasTileEntity, hasTileEntity, idPicked, isAirBlock, isAssociatedBlockID, isAssociatedBlockID, isBeaconBase, isBed, isBedFoot, isBlockBurning, isBlockFoliage, isBlockNormalCube, isBlockReplaceable, isBlockSolid, isBlockSolidOnSide, isCollidable, isFertile, isFireSource, isFlammable, isFlowerPot, isGenMineableReplaceable, isLadder, isNormalCube, isProvidingStrongPower, isProvidingWeakPower, isWood, onBlockActivated, onBlockAdded, onBlockClicked, onBlockDestroyedByExplosion, onBlockDestroyedByPlayer, onBlockEventReceived, onBlockExploded, onBlockHarvested, onBlockPlaced, onBlockPlacedBy, onBlockPreDestroy, onEntityCollidedWithBlock, onEntityWalking, onFallenUpon, onNeighborBlockChange, onNeighborTileChange, onPlantGrow, onPostBlockPlaced, quantityDropped, quantityDroppedWithBonus, recolourBlock, removeBlockByPlayer, renderAsNormalBlock, rotateBlock, setBedOccupied, setBlockBounds, setBlockBoundsBasedOnState, setBlockBoundsForItemRender, setBlockUnbreakable, setBurnProperties, setCreativeTab, setHardness, setLightOpacity, setLightValue, setResistance, setStepSound, setTextureName, setTickRandomly, setUnlocalizedName, shouldCheckWeakPower, tickRate, velocityToAddToEntity, weakTileChanges`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### LEAF_TYPES

          public static final String[] LEAF_TYPES

    - #### field_94396_b

          public static final String[][] field_94396_b

  - ### Method Detail

    - #### getBlockColor

          public int getBlockColor()

      Overrides:
        `getBlockColor` in class `Block`

    - #### getRenderColor

          public int getRenderColor(int par1)

      Overrides:
        `getRenderColor` in class `Block`

    - #### colorMultiplier

          public int colorMultiplier(IBlockAccess par1IBlockAccess,
                            int par2,
                            int par3,
                            int par4)

      Overrides:
        `colorMultiplier` in class `Block`

    - #### breakBlock

          public void breakBlock(World par1World,
                        int par2,
                        int par3,
                        int par4,
                        int par5,
                        int par6)

      Called on server worlds only when the block has been replaced by a different block ID, or the same block with a different metadata value, but before the new metadata value is set. Args: World, x, y, z, old block ID, old metadata
      Overrides:
        `breakBlock` in class `Block`

    - #### updateTick

          public void updateTick(World par1World,
                        int par2,
                        int par3,
                        int par4,
                        Random par5Random)

      Ticks the block if it's been scheduled
      Overrides:
        `updateTick` in class `Block`

    - #### randomDisplayTick

          public void randomDisplayTick(World par1World,
                               int par2,
                               int par3,
                               int par4,
                               Random par5Random)

      Overrides:
        `randomDisplayTick` in class `Block`

    - #### quantityDropped

          public int quantityDropped(Random par1Random)

      Returns the quantity of items to drop on block destruction.
      Overrides:
        `quantityDropped` in class `Block`

    - #### idDropped

          public int idDropped(int par1,
                      Random par2Random,
                      int par3)

      Returns the ID of the items to drop on destruction.
      Overrides:
        `idDropped` in class `Block`

    - #### dropBlockAsItemWithChance

          public void dropBlockAsItemWithChance(World par1World,
                                       int par2,
                                       int par3,
                                       int par4,
                                       int par5,
                                       float par6,
                                       int par7)

      Drops the block items with a specified chance of dropping the specified items
      Overrides:
        `dropBlockAsItemWithChance` in class `Block`

    - #### harvestBlock

          public void harvestBlock(World par1World,
                          EntityPlayer par2EntityPlayer,
                          int par3,
                          int par4,
                          int par5,
                          int par6)

      Called when the player destroys a block with an item that can harvest it. (i, j, k) are the coordinates of the block and l is the block's subtype/damage.
      Overrides:
        `harvestBlock` in class `Block`

    - #### damageDropped

          public int damageDropped(int par1)

      Determines the damage on the item the block drops. Used in cloth and wood.
      Overrides:
        `damageDropped` in class `Block`

    - #### isOpaqueCube

          public boolean isOpaqueCube()

      Is this block (a) opaque and (b) a full 1m cube? This determines whether or not to render the shared face of two adjacent blocks and also whether the player can attach torches, redstone wire, etc to this block.
      Overrides:
        `isOpaqueCube` in class `BlockLeavesBase`

    - #### getIcon

          public Icon getIcon(int par1,
                     int par2)

      Overrides:
        `getIcon` in class `Block`

    - #### setGraphicsLevel

          public void setGraphicsLevel(boolean par1)

    - #### getSubBlocks

          public void getSubBlocks(int par1,
                          CreativeTabs par2CreativeTabs,
                          List par3List)

      Overrides:
        `getSubBlocks` in class `Block`

    - #### registerIcons

          public void registerIcons(IconRegister par1IconRegister)

      Overrides:
        `registerIcons` in class `Block`

    - #### isShearable

          public boolean isShearable(ItemStack item,
                            World world,
                            int x,
                            int y,
                            int z)

      Description copied from interface: `IShearable`
      Checks if the object is currently shearable Example: Sheep return false when they have no wool
      Specified by:
        `isShearable` in interface `IShearable`
      Parameters:
        `item` - The itemstack that is being used, Possible to be null
        `world` - The current world
        `x` - The X Position
        `y` - The Y Position
        `z` - The Z Position
      Returns:
        If this is shearable, and onSheared should be called.

    - #### onSheared

          public ArrayList<ItemStack> onSheared(ItemStack item,
                                       World world,
                                       int x,
                                       int y,
                                       int z,
                                       int fortune)

      Description copied from interface: `IShearable`
      Performs the shear function on this object. This is called for both client, and server. The object should perform all actions related to being sheared, except for dropping of the items. Returns a list of items that resulted from the shearing process. For entities, they should trust there internal location information over the values passed into this function.
      Specified by:
        `onSheared` in interface `IShearable`
      Parameters:
        `item` - The itemstack that is being used, Possible to be null
        `world` - The current world
        `x` - The X Position
        `y` - The Y Position
        `z` - The Z Position
        `fortune` - The fortune level of the shears being used
      Returns:
        A ArrayList containing all items from this shearing. Possible to be null.

    - #### beginLeavesDecay

          public void beginLeavesDecay(World world,
                              int x,
                              int y,
                              int z)

      Description copied from class: `Block`
      Called when a leaf should start its decay process.
      Overrides:
        `beginLeavesDecay` in class `Block`
      Parameters:
        `world` - The current world
        `x` - X Position
        `y` - Y Position
        `z` - Z Position

    - #### isLeaves

          public boolean isLeaves(World world,
                         int x,
                         int y,
                         int z)

      Description copied from class: `Block`
      Determines if this block is considered a leaf block, used to apply the leaf decay and generation system.
      Overrides:
        `isLeaves` in class `Block`
      Parameters:
        `world` - The current world
        `x` - X Position
        `y` - Y Position
        `z` - Z Position
      Returns:
        true if this block is considered leaves.