net.minecraftforge.fluids

## Class BlockFluidFinite

- java.lang.Object
- - net.minecraft.block.Block
  - - net.minecraftforge.fluids.BlockFluidBase
    - - net.minecraftforge.fluids.BlockFluidFinite

- All Implemented Interfaces:
    IFluidBlock

      public class BlockFluidFinite
      extends BlockFluidBase

  This is a cellular-automata based finite fluid block implementation. It is highly recommended that you use/extend this class for finite fluid blocks.
  Author:
    OvermindDL1, KingLemming

- - ### Field Summary

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

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BlockFluidFinite(int id, Fluid fluid, Material material)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `canCollideCheck(int meta, boolean fullHit)` Returns whether this block is collideable based on the arguments passed in \n@param par1 block metaData \n@param par2 whether the player right-clicked while holding a boat
    `boolean` | `canDrain(World world, int x, int y, int z)` Check to see if a block can be drained.
    `FluidStack` | `drain(World world, int x, int y, int z, boolean doDrain)` Attempt to drain the block.
    `int` | `getMaxRenderHeightMeta()`
    `int` | `getQuantaValue(IBlockAccess world, int x, int y, int z)`
    `int` | `tryToFlowVerticallyInto(World world, int x, int y, int z, int amtToInput)`
    `void` | `updateTick(World world, int x, int y, int z, Random rand)` Ticks the block if it's been scheduled

    - ### Methods inherited from class net.minecraftforge.fluids.BlockFluidBase

      `canDisplace, displaceIfPossible, func_82506_l, getBlockBrightness, getBlocksMovement, getCollisionBoundingBoxFromPool, getDensity, getFilledPercentage, getFlowDirection, getFlowVector, getFluid, getLightValue, getMixedBrightnessForBlock, getQuantaPercentage, getQuantaValueAbove, getQuantaValueBelow, getRenderBlockPass, getRenderType, getTemperature, idDropped, isOpaqueCube, onBlockAdded, onNeighborBlockChange, quantityDropped, renderAsNormalBlock, setDensity, setMaxScaledLight, setQuantaPerBlock, setRenderPass, setTemperature, setTickRate, shouldSideBeRendered, tickRate, velocityToAddToEntity`

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

      `addBlockDestroyEffects, addBlockHitEffects, addCollisionBoxesToList, addCreativeItems, beginLeavesDecay, breakBlock, canBeReplacedByLeaves, canBlockStay, canConnectRedstone, canCreatureSpawn, canDragonDestroy, canDropFromExplosion, canEntityDestroy, canHarvestBlock, canPlaceBlockAt, canPlaceBlockOnSide, canPlaceBlockOnSide, canPlaceTorchOnTop, canProvidePower, canRenderInPass, canSilkHarvest, canSustainLeaves, canSustainPlant, collisionRayTrace, colorMultiplier, createTileEntity, damageDropped, dropBlockAsItem, dropBlockAsItemWithChance, fillWithRain, getAmbientOcclusionLightValue, getBedDirection, getBedSpawnPosition, getBlockBoundsMaxX, getBlockBoundsMaxY, getBlockBoundsMaxZ, getBlockBoundsMinX, getBlockBoundsMinY, getBlockBoundsMinZ, getBlockColor, getBlockDropped, getBlockHardness, getBlockTexture, getBlockTextureFromSide, getComparatorInputOverride, getCreativeTabToDisplayOn, getDamageValue, getEnableStats, getEnchantPowerBonus, getExplosionResistance, getExplosionResistance, getFireSpreadSpeed, getFlammability, getIcon, getItemIconName, getLightOpacity, getLocalizedName, getMobilityFlag, getPickBlock, getPlayerRelativeBlockHardness, getRenderColor, getSelectedBoundingBoxFromPool, getSubBlocks, getTickRandomly, getUnlocalizedName, getValidRotations, harvestBlock, hasComparatorInputOverride, hasTileEntity, hasTileEntity, idPicked, isAirBlock, isAssociatedBlockID, isAssociatedBlockID, isBeaconBase, isBed, isBedFoot, isBlockBurning, isBlockFoliage, isBlockNormalCube, isBlockReplaceable, isBlockSolid, isBlockSolidOnSide, isCollidable, isFertile, isFireSource, isFlammable, isFlowerPot, isGenMineableReplaceable, isLadder, isLeaves, isNormalCube, isProvidingStrongPower, isProvidingWeakPower, isWood, onBlockActivated, onBlockClicked, onBlockDestroyedByExplosion, onBlockDestroyedByPlayer, onBlockEventReceived, onBlockExploded, onBlockHarvested, onBlockPlaced, onBlockPlacedBy, onBlockPreDestroy, onEntityCollidedWithBlock, onEntityWalking, onFallenUpon, onNeighborTileChange, onPlantGrow, onPostBlockPlaced, quantityDropped, quantityDroppedWithBonus, randomDisplayTick, recolourBlock, registerIcons, removeBlockByPlayer, rotateBlock, setBedOccupied, setBlockBounds, setBlockBoundsBasedOnState, setBlockBoundsForItemRender, setBlockUnbreakable, setBurnProperties, setCreativeTab, setHardness, setLightOpacity, setLightValue, setResistance, setStepSound, setTextureName, setTickRandomly, setUnlocalizedName, weakTileChanges`

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

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

- - ### Constructor Detail

    - #### BlockFluidFinite

          public BlockFluidFinite(int id,
                          Fluid fluid,
                          Material material)

  - ### Method Detail

    - #### getQuantaValue

          public int getQuantaValue(IBlockAccess world,
                           int x,
                           int y,
                           int z)

      Specified by:
        `getQuantaValue` in class `BlockFluidBase`

    - #### canCollideCheck

          public boolean canCollideCheck(int meta,
                                boolean fullHit)

      Description copied from class: `Block`
      Returns whether this block is collideable based on the arguments passed in \n@param par1 block metaData \n@param par2 whether the player right-clicked while holding a boat
      Specified by:
        `canCollideCheck` in class `BlockFluidBase`

    - #### getMaxRenderHeightMeta

          public int getMaxRenderHeightMeta()

      Specified by:
        `getMaxRenderHeightMeta` in class `BlockFluidBase`

    - #### updateTick

          public void updateTick(World world,
                        int x,
                        int y,
                        int z,
                        Random rand)

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

    - #### tryToFlowVerticallyInto

          public int tryToFlowVerticallyInto(World world,
                                    int x,
                                    int y,
                                    int z,
                                    int amtToInput)

    - #### drain

          public FluidStack drain(World world,
                         int x,
                         int y,
                         int z,
                         boolean doDrain)

      Description copied from interface: `IFluidBlock`
      Attempt to drain the block. This method should be called by devices such as pumps. NOTE: The block is intended to handle its own state changes.
        `doDrain` - If false, the drain will only be simulated.
      Returns:

    - #### canDrain

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

      Description copied from interface: `IFluidBlock`
      Check to see if a block can be drained. This method should be called by devices such as pumps.
      Returns: