Interface Block
-
- All Superinterfaces:
Metadatable
public interface Block extends Metadatable
Represents a block. This is a live object, and only one Block may exist for any given location in a world. The state of the block may change concurrently to your own handling of it; use block.getState() to get a snapshot state of a block which will not be modified.
Note that parts of this class which require access to the world at large (i.e. lighting and power) may not be able to be safely accessed during world generation when used in cases like BlockPhysicsEvent!!!!
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description boolean
breakNaturally()
Breaks the block and spawns items as if a player had digged itboolean
breakNaturally(ItemStack tool)
Breaks the block and spawns items as if a player had digged it with a specific toolBiome
getBiome()
Returns the biome that this block resides inBlockData
getBlockData()
Gets the complete block data for this blockint
getBlockPower()
Returns the redstone power being provided to this blockint
getBlockPower(BlockFace face)
Returns the redstone power being provided to this block faceChunk
getChunk()
Gets the chunk which contains this blockbyte
getData()
Deprecated.Magic valueCollection<ItemStack>
getDrops()
Returns a list of items which would drop by destroying this blockCollection<ItemStack>
getDrops(ItemStack tool)
Returns a list of items which would drop by destroying this block with a specific toolBlockFace
getFace(Block block)
Gets the face relation of this block compared to the given block.double
getHumidity()
Gets the humidity of the biome of this blockbyte
getLightFromBlocks()
Get the amount of light at this block from nearby blocks.byte
getLightFromSky()
Get the amount of light at this block from the sky.byte
getLightLevel()
Gets the light level between 0-15Location
getLocation()
Gets the Location of the blockLocation
getLocation(Location loc)
Stores the location of the block in the provided Location object.PistonMoveReaction
getPistonMoveReaction()
Returns the reaction of the block when moved by a pistonBlock
getRelative(int modX, int modY, int modZ)
Gets the block at the given offsetsBlock
getRelative(BlockFace face)
Gets the block at the given faceBlock
getRelative(BlockFace face, int distance)
Gets the block at the given distance of the given faceBlockState
getState()
Captures the current state of this block.double
getTemperature()
Gets the temperature of the biome of this blockMaterial
getType()
Gets the type of this blockWorld
getWorld()
Gets the world which contains this Blockint
getX()
Gets the x-coordinate of this blockint
getY()
Gets the y-coordinate of this blockint
getZ()
Gets the z-coordinate of this blockboolean
isBlockFaceIndirectlyPowered(BlockFace face)
Returns true if the block face is being indirectly powered by Redstone.boolean
isBlockFacePowered(BlockFace face)
Returns true if the block face is being powered by Redstone.boolean
isBlockIndirectlyPowered()
Returns true if the block is being indirectly powered by Redstone.boolean
isBlockPowered()
Returns true if the block is being powered by Redstone.boolean
isEmpty()
Checks if this block is empty.boolean
isLiquid()
Checks if this block is liquid.boolean
isPassable()
Checks if this block is passable.void
setBiome(Biome bio)
Sets the biome that this block resides invoid
setBlockData(BlockData data)
Sets the complete data for this blockvoid
setBlockData(BlockData data, boolean applyPhysics)
Sets the complete data for this blockvoid
setType(Material type)
Sets the type of this blockvoid
setType(Material type, boolean applyPhysics)
Sets the type of this block-
Methods inherited from interface org.bukkit.metadata.Metadatable
getMetadata, hasMetadata, removeMetadata, setMetadata
-
-
-
-
Method Detail
-
getData
@Deprecated byte getData()
Deprecated.Magic valueGets the metadata for this block- Returns:
- block specific metadata
-
getBlockData
BlockData getBlockData()
Gets the complete block data for this block- Returns:
- block specific data
-
getRelative
Block getRelative(int modX, int modY, int modZ)
Gets the block at the given offsets- Parameters:
modX
- X-coordinate offsetmodY
- Y-coordinate offsetmodZ
- Z-coordinate offset- Returns:
- Block at the given offsets
-
getRelative
Block getRelative(BlockFace face)
Gets the block at the given faceThis method is equal to getRelative(face, 1)
- Parameters:
face
- Face of this block to return- Returns:
- Block at the given face
- See Also:
getRelative(BlockFace, int)
-
getRelative
Block getRelative(BlockFace face, int distance)
Gets the block at the given distance of the given faceFor example, the following method places water at 100,102,100; two blocks above 100,100,100.
Block block = world.getBlockAt(100, 100, 100); Block shower = block.getRelative(BlockFace.UP, 2); shower.setType(Material.WATER);
- Parameters:
face
- Face of this block to returndistance
- Distance to get the block at- Returns:
- Block at the given face
-
getType
Material getType()
Gets the type of this block- Returns:
- block type
-
getLightLevel
byte getLightLevel()
Gets the light level between 0-15- Returns:
- light level
-
getLightFromSky
byte getLightFromSky()
Get the amount of light at this block from the sky.Any light given from other sources (such as blocks like torches) will be ignored.
- Returns:
- Sky light level
-
getLightFromBlocks
byte getLightFromBlocks()
Get the amount of light at this block from nearby blocks.Any light given from other sources (such as the sun) will be ignored.
- Returns:
- Block light level
-
getWorld
World getWorld()
Gets the world which contains this Block- Returns:
- World containing this block
-
getX
int getX()
Gets the x-coordinate of this block- Returns:
- x-coordinate
-
getY
int getY()
Gets the y-coordinate of this block- Returns:
- y-coordinate
-
getZ
int getZ()
Gets the z-coordinate of this block- Returns:
- z-coordinate
-
getLocation
Location getLocation()
Gets the Location of the block- Returns:
- Location of block
-
getLocation
Location getLocation(Location loc)
Stores the location of the block in the provided Location object.If the provided Location is null this method does nothing and returns null.
- Parameters:
loc
- the location to copy into- Returns:
- The Location object provided or null
-
getChunk
Chunk getChunk()
Gets the chunk which contains this block- Returns:
- Containing Chunk
-
setBlockData
void setBlockData(BlockData data)
Sets the complete data for this block- Parameters:
data
- new block specific data
-
setBlockData
void setBlockData(BlockData data, boolean applyPhysics)
Sets the complete data for this block- Parameters:
data
- new block specific dataapplyPhysics
- false to cancel physics from the changed block
-
setType
void setType(Material type)
Sets the type of this block- Parameters:
type
- Material to change this block to
-
setType
void setType(Material type, boolean applyPhysics)
Sets the type of this block- Parameters:
type
- Material to change this block toapplyPhysics
- False to cancel physics on the changed block.
-
getFace
BlockFace getFace(Block block)
Gets the face relation of this block compared to the given block.For example:
Block current = world.getBlockAt(100, 100, 100); Block target = world.getBlockAt(100, 101, 100); current.getFace(target) == BlockFace.Up;
If the given block is not connected to this block, null may be returned- Parameters:
block
- Block to compare against this block- Returns:
- BlockFace of this block which has the requested block, or null
-
getState
BlockState getState()
Captures the current state of this block. You may then cast that state into any accepted type, such as Furnace or Sign.The returned object will never be updated, and you are not guaranteed that (for example) a sign is still a sign after you capture its state.
- Returns:
- BlockState with the current state of this block.
-
getBiome
Biome getBiome()
Returns the biome that this block resides in- Returns:
- Biome type containing this block
-
setBiome
void setBiome(Biome bio)
Sets the biome that this block resides in- Parameters:
bio
- new Biome type for this block
-
isBlockPowered
boolean isBlockPowered()
Returns true if the block is being powered by Redstone.- Returns:
- True if the block is powered.
-
isBlockIndirectlyPowered
boolean isBlockIndirectlyPowered()
Returns true if the block is being indirectly powered by Redstone.- Returns:
- True if the block is indirectly powered.
-
isBlockFacePowered
boolean isBlockFacePowered(BlockFace face)
Returns true if the block face is being powered by Redstone.- Parameters:
face
- The block face- Returns:
- True if the block face is powered.
-
isBlockFaceIndirectlyPowered
boolean isBlockFaceIndirectlyPowered(BlockFace face)
Returns true if the block face is being indirectly powered by Redstone.- Parameters:
face
- The block face- Returns:
- True if the block face is indirectly powered.
-
getBlockPower
int getBlockPower(BlockFace face)
Returns the redstone power being provided to this block face- Parameters:
face
- the face of the block to query or BlockFace.SELF for the block itself- Returns:
- The power level.
-
getBlockPower
int getBlockPower()
Returns the redstone power being provided to this block- Returns:
- The power level.
-
isEmpty
boolean isEmpty()
Checks if this block is empty.A block is considered empty when
getType()
returnsMaterial.AIR
.- Returns:
- true if this block is empty
-
isLiquid
boolean isLiquid()
Checks if this block is liquid.A block is considered liquid when
getType()
returnsMaterial.WATER
orMaterial.LAVA
.- Returns:
- true if this block is liquid
-
getTemperature
double getTemperature()
Gets the temperature of the biome of this block- Returns:
- Temperature of this block
-
getHumidity
double getHumidity()
Gets the humidity of the biome of this block- Returns:
- Humidity of this block
-
getPistonMoveReaction
PistonMoveReaction getPistonMoveReaction()
Returns the reaction of the block when moved by a piston- Returns:
- reaction
-
breakNaturally
boolean breakNaturally()
Breaks the block and spawns items as if a player had digged it- Returns:
- true if the block was destroyed
-
breakNaturally
boolean breakNaturally(ItemStack tool)
Breaks the block and spawns items as if a player had digged it with a specific tool- Parameters:
tool
- The tool or item in hand used for digging- Returns:
- true if the block was destroyed
-
getDrops
Collection<ItemStack> getDrops()
Returns a list of items which would drop by destroying this block- Returns:
- a list of dropped items for this type of block
-
getDrops
Collection<ItemStack> getDrops(ItemStack tool)
Returns a list of items which would drop by destroying this block with a specific tool- Parameters:
tool
- The tool or item in hand used for digging- Returns:
- a list of dropped items for this type of block
-
isPassable
boolean isPassable()
Checks if this block is passable.A block is passable if it has no colliding parts that would prevent players from moving through it.
Examples: Tall grass, flowers, signs, etc. are passable, but open doors, fence gates, trap doors, etc. are not because they still have parts that can be collided with.
- Returns:
true
if passable
-
-