net.minecraft.block

## Class BlockVine

- java.lang.Object
- - net.minecraft.block.Block
  - - net.minecraft.block.BlockVine

- All Implemented Interfaces:
    IShearable

      public class BlockVine
      extends Block
      implements IShearable

- - ### Field Summary

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

      `anvil, beacon, bed, bedrock, blockClay, blockDiamond, blockEmerald, blockGold, blockID, blockIndexInTexture, blockLapis, blockMaterial, blockParticleGravity, blocksList, blockSnow, blockSteel, bookShelf, brewingStand, brick, cactus, cake, canBlockGrass, carrot, cauldron, chest, cloth, cobblestone, cobblestoneMossy, cobblestoneWall, cocoaPlant, commandBlock, crops, deadBush, dirt, dispenser, doorSteel, doorWood, dragonEgg, enchantmentTable, enderChest, endPortal, endPortalFrame, fence, fenceGate, fenceIron, fire, flowerPot, glass, glowStone, grass, gravel, ice, isDefaultTexture, 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, oreRedstone, oreRedstoneGlowing, pistonBase, pistonExtension, pistonMoving, pistonStickyBase, planks, plantRed, plantYellow, portal, potato, pressurePlatePlanks, pressurePlateStone, pumpkin, pumpkinLantern, pumpkinStem, rail, railDetector, railPowered, redstoneLampActive, redstoneLampIdle, redstoneRepeaterActive, redstoneRepeaterIdle, redstoneWire, reed, requiresSelfNotify, sand, sandStone, sapling, signPost, signWall, silverfish, skull, slipperiness, slowSand, snow, soundAnvilFootstep, soundClothFootstep, soundGlassFootstep, soundGrassFootstep, soundGravelFootstep, soundLadderFootstep, soundMetalFootstep, soundPowderFootstep, soundSandFootstep, soundSnowFootstep, soundStoneFootstep, soundWoodFootstep, sponge, stairCompactCobblestone, stairCompactPlanks, stairsBrick, stairsNetherBrick, stairsSandStone, stairsStoneBrickSmooth, stairsWoodBirch, stairsWoodJungle, stairsWoodSpruce, stepSound, stone, stoneBrick, stoneButton, stoneDoubleSlab, stoneOvenActive, stoneOvenIdle, stoneSingleSlab, tallGrass, thinGlass, tilledField, tnt, torchRedstoneActive, torchRedstoneIdle, torchWood, trapdoor, tripWire, tripWireSource, useNeighborBrightness, vine, waterlily, waterMoving, waterStill, web, whiteStone, wood, woodDoubleSlab, woodenButton, woodSingleSlab, workbench`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BlockVine(int par1)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `canPlaceBlockOnSide(World par1World, int par2, int par3, int par4, int par5)` checks to see if you can place this block can be placed on that side of a block: BlockLever overrides
    `int` | `colorMultiplier(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)`
    `int` | `getBlockColor()`
    `AxisAlignedBB` | `getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4)` Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been cleared to be reused)
    `int` | `getRenderColor(int par1)`
    `int` | `getRenderType()` The type of render function that is called for this block
    `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` | `isLadder(World world, int x, int y, int z)` Checks if a player or entity can use this block to 'climb' like a ladder.
    `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
    `int` | `onBlockPlaced(World par1World, int par2, int par3, int par4, int par5, float par6, float par7, float par8, int par9)` Called when a block is placed using its ItemBlock.
    `void` | `onNeighborBlockChange(World par1World, int par2, int par3, int par4, int par5)` Lets the block know when one of its neighbor changes.
    `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.
    `boolean` | `renderAsNormalBlock()` If this block doesn't render as an ordinary block it will return False (examples: signs, buttons, stairs, etc)
    `void` | `setBlockBoundsBasedOnState(IBlockAccess par1IBlockAccess, int par2, int par3, int par4)` Updates the blocks bounds based on its current state.
    `void` | `setBlockBoundsForItemRender()` Sets the block's bounds for rendering it as an item
    `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.Block

      `addBlockDestroyEffects, addBlockHitEffects, addCollidingBlockToList, addCreativeItems, beginLeavesDecay, breakBlock, canBeReplacedByLeaves, canBlockStay, canCollideCheck, canConnectRedstone, canCreatureSpawn, canDragonDestroy, canDropFromExplosion, canHarvestBlock, canPlaceBlockAt, canPlaceTorchOnTop, canProvidePower, canRenderInPass, canSilkHarvest, canSustainLeaves, canSustainPlant, collisionRayTrace, createTileEntity, damageDropped, dropBlockAsItem, dropBlockAsItemWithChance, fillWithRain, func_82505_u_, func_82506_l, getAmbientOcclusionLightValue, getBedDirection, getBedSpawnPosition, getBlockBoundsMaxX, getBlockBoundsMaxY, getBlockBoundsMaxZ, getBlockBoundsMinX, getBlockBoundsMinY, getBlockBoundsMinZ, getBlockBrightness, getBlockDropped, getBlockHardness, getBlockName, getBlocksMovement, getBlockTexture, getBlockTextureFromSide, getBlockTextureFromSideAndMetadata, getCreativeTabToDisplayOn, getDamageValue, getEnableStats, getExplosionResistance, getExplosionResistance, getFireSpreadSpeed, getFlammability, getLightOpacity, getLightValue, getMixedBrightnessForBlock, getMobilityFlag, getPickBlock, getPlayerRelativeBlockHardness, getRenderBlockPass, getSelectedBoundingBoxFromPool, getSubBlocks, getTextureFile, getTickRandomly, hasTileEntity, hasTileEntity, idPicked, isAirBlock, isBeaconBase, isBed, isBedFoot, isBlockBurning, isBlockFoliage, isBlockNormalCube, isBlockReplaceable, isBlockSolid, isBlockSolidOnSide, isCollidable, isFertile, isFireSource, isFlammable, isGenMineableReplaceable, isLeaves, isNormalCube, isProvidingStrongPower, isProvidingWeakPower, isWood, onBlockActivated, onBlockAdded, onBlockClicked, onBlockDestroyedByExplosion, onBlockDestroyedByPlayer, onBlockEventReceived, onBlockHarvested, onBlockPlacedBy, onEntityCollidedWithBlock, onEntityWalking, onFallenUpon, onPlantGrow, onPostBlockPlaced, onSetBlockIDWithMetaData, quantityDropped, quantityDroppedWithBonus, randomDisplayTick, removeBlockByPlayer, setBedOccupied, setBlockBounds, setBlockName, setBlockUnbreakable, setBurnProperties, setCreativeTab, setHardness, setLightOpacity, setLightValue, setRequiresSelfNotify, setResistance, setStepSound, setTextureFile, setTickRandomly, shouldSideBeRendered, tickRate, translateBlockName, velocityToAddToEntity`

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

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

- - ### Constructor Detail

    - #### BlockVine

          public BlockVine(int par1)

  - ### Method Detail

    - #### setBlockBoundsForItemRender

          public void setBlockBoundsForItemRender()

      Sets the block's bounds for rendering it as an item
      Overrides:
        `setBlockBoundsForItemRender` in class `Block`

    - #### getRenderType

          public int getRenderType()

      The type of render function that is called for this block
      Overrides:
        `getRenderType` 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 `Block`

    - #### renderAsNormalBlock

          public boolean renderAsNormalBlock()

      If this block doesn't render as an ordinary block it will return False (examples: signs, buttons, stairs, etc)
      Overrides:
        `renderAsNormalBlock` in class `Block`

    - #### setBlockBoundsBasedOnState

          public void setBlockBoundsBasedOnState(IBlockAccess par1IBlockAccess,
                                        int par2,
                                        int par3,
                                        int par4)

      Updates the blocks bounds based on its current state. Args: world, x, y, z
      Overrides:
        `setBlockBoundsBasedOnState` in class `Block`

    - #### getCollisionBoundingBoxFromPool

          public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World,
                                                      int par2,
                                                      int par3,
                                                      int par4)

      Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been cleared to be reused)
      Overrides:
        `getCollisionBoundingBoxFromPool` in class `Block`

    - #### canPlaceBlockOnSide

          public boolean canPlaceBlockOnSide(World par1World,
                                    int par2,
                                    int par3,
                                    int par4,
                                    int par5)

      checks to see if you can place this block can be placed on that side of a block: BlockLever overrides
      Overrides:
        `canPlaceBlockOnSide` in class `Block`

    - #### 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`

    - #### onNeighborBlockChange

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

      Lets the block know when one of its neighbor changes. Doesn't know which neighbor changed (coordinates passed are their own) Args: x, y, z, neighbor blockID
      Overrides:
        `onNeighborBlockChange` 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`

    - #### onBlockPlaced

          public int onBlockPlaced(World par1World,
                          int par2,
                          int par3,
                          int par4,
                          int par5,
                          float par6,
                          float par7,
                          float par8,
                          int par9)

      Called when a block is placed using its ItemBlock. Args: World, X, Y, Z, side, hitX, hitY, hitZ, block metadata
      Overrides:
        `onBlockPlaced` 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`

    - #### quantityDropped

          public int quantityDropped(Random par1Random)

      Returns the quantity of items to drop on block destruction.
      Overrides:
        `quantityDropped` 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`

    - #### 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.

    - #### isLadder

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

      Description copied from class: `Block`
      Checks if a player or entity can use this block to 'climb' like a ladder.
      Overrides:
        `isLadder` in class `Block`
      Parameters:
        `world` - The current world
        `x` - X Position
        `y` - Y position
        `z` - Z position
      Returns:
        True if the block should act like a ladder