# Uses of Interface
org.bukkit.block.BlockState

Packages that use BlockState
Package
Description
com.destroystokyo.paper
io.papermc.paper.block
io.papermc.paper.event.block
org.bukkit
The root package of the Bukkit API, contains generalized API classes.
org.bukkit.block
Classes used to manipulate the voxels in a `world`, including special states.
org.bukkit.entity
Interfaces for non-voxel objects that can exist in a `world`, including all players, monsters, projectiles, etc.
org.bukkit.event.block
`Events` relating to when a `block` is changed or interacts with the `world`.
org.bukkit.event.entity
`Events` relating to `entities`, excluding some directly referencing some more specific entity types.
org.bukkit.event.world
`Events` triggered by various `world` states or changes.
org.bukkit.generator
Classes to facilitate `world` generation implementation.
org.bukkit.inventory.meta
The interfaces used when manipulating extra data can can be stored inside `item stacks`.
org.bukkit.structure
Classes related to creating or using `structures` without creating `Structure blocks` in the world.

## Uses of BlockState in com.destroystokyo.paper

Methods in com.destroystokyo.paper with parameters of type BlockState
Modifier and Type
Method
Description
`boolean`
MaterialSetTag.`isTagged(@NotNull BlockState block)`

## Uses of BlockState in io.papermc.paper.block

Subinterfaces of BlockState in io.papermc.paper.block
Modifier and Type
Interface
Description
`interface`
`MovingPiston`

## Uses of BlockState in io.papermc.paper.event.block

Constructors in io.papermc.paper.event.block with parameters of type BlockState
Modifier
Constructor
Description
``
`DragonEggFormEvent(@NotNull Block block, @NotNull BlockState newState, @NotNull DragonBattle dragonBattle)`

## Uses of BlockState in org.bukkit

Methods in org.bukkit that return BlockState
Modifier and Type
Method
Description
`@NotNull BlockState`
RegionAccessor.`getBlockState(int x, int y, int z)`
Gets the `BlockState` at the given coordinates.
`@NotNull BlockState`
RegionAccessor.`getBlockState(@NotNull Location location)`
Gets the `BlockState` at the given `Location`.
`default @NotNull BlockState[]`
Chunk.`getTileEntities()`
Get a list of all tile entities in the chunk.
`@NotNull BlockState[]`
Chunk.`getTileEntities(boolean useSnapshot)`
Get a list of all tile entities in the chunk.
Methods in org.bukkit that return types with arguments of type BlockState
Modifier and Type
Method
Description
`@NotNull Collection<BlockState>`
Chunk.`getTileEntities(@NotNull Predicate<Block> blockPredicate, boolean useSnapshot)`
Get a list of all tile entities that match a given predicate in the chunk.
Method parameters in org.bukkit with type arguments of type BlockState
Modifier and Type
Method
Description
`boolean`
RegionAccessor.`generateTree(@NotNull Location location, @NotNull Random random, @NotNull TreeType type, @Nullable Predicate<BlockState> statePredicate)`
Creates a tree at the given `Location`
`boolean`
RegionAccessor.`generateTree(@NotNull Location location, @NotNull Random random, @NotNull TreeType type, @Nullable Consumer<BlockState> stateConsumer)`
Creates a tree at the given `Location`

## Uses of BlockState in org.bukkit.block

Subinterfaces of BlockState in org.bukkit.block
Modifier and Type
Interface
Description
`interface`
`Banner`
Represents a captured state of a banner.
`interface`
`Barrel`
Represents a captured state of a Barrel.
`interface`
`Beacon`
Represents a captured state of a beacon.
`interface`
`Bed`
Represents a captured state of a bed.
`interface`
`Beehive`
Represents a captured state of a bee hive.
`interface`
`Bell`
Represents a captured state of Bell.
`interface`
`BlastFurnace`
Represents a captured state of a blast furnace.
`interface`
`BrewingStand`
Represents a captured state of a brewing stand.
`interface`
`Campfire`
Represents a captured state of a campfire.
`interface`
`Chest`
Represents a captured state of a chest.
`interface`
`ChiseledBookshelf`
Represents a captured state of a chiseled bookshelf.
`interface`
`CommandBlock`
Represents a captured state of a command block.
`interface`
`Comparator`
Represents a captured state of an on / off comparator.
`interface`
`Conduit`
Represents a captured state of a conduit.
`interface`
`Container`
Represents a captured state of a container block.
`interface`
`CreatureSpawner`
Represents a captured state of a creature spawner.
`interface`
`DaylightDetector`
Represents a captured state of a (possibly inverted) daylight detector.
`interface`
`Dispenser`
Represents a captured state of a dispenser.
`interface`
`Dropper`
Represents a captured state of a dropper.
`interface`
`EnchantingTable`
Represents a captured state of an enchanting table.
`interface`
`EnderChest`
Represents a captured state of an ender chest.
`interface`
`EndGateway`
Represents a captured state of an end gateway.
`interface`
`EntityBlockStorage<T extends Entity>`
Represents a captured state of a block which stores entities.
`interface`
`Furnace`
Represents a captured state of a furnace.
`interface`
`HangingSign`
Represents a captured state of a hanging sign.
`interface`
`Hopper`
Represents a captured state of a hopper.
`interface`
`Jigsaw`
Represents a captured state of a jigsaw.
`interface`
`Jukebox`
Represents a captured state of a jukebox.
`interface`
`Lectern`
Represents a captured state of a lectern.
`interface`
`SculkCatalyst`
Represents a captured state of a sculk catalyst.
`interface`
`SculkSensor`
Represents a captured state of a sculk sensor
`interface`
`SculkShrieker`
Represents a captured state of a sculk shrieker.
`interface`
`ShulkerBox`
Represents a captured state of a ShulkerBox.
`interface`
`Sign`
Represents a captured state of either a SignPost or a WallSign.
`interface`
`Skull`
Represents a captured state of a skull block.
`interface`
`Smoker`
Represents a captured state of a smoker.
`interface`
`Structure`
Represents a structure block that can save and load blocks from a file.
`interface`
`TileState`
Represents a block state that also hosts a tile entity at the given location.
Methods in org.bukkit.block that return BlockState
Modifier and Type
Method
Description
`@NotNull BlockState`
Block.`getState()`
Captures the current state of this block.
`@NotNull BlockState`
Block.`getState(boolean useSnapshot)`

## Uses of BlockState in org.bukkit.entity

Method parameters in org.bukkit.entity with type arguments of type BlockState
Modifier and Type
Method
Description
`void`
Player.`sendBlockChanges(@NotNull Collection<BlockState> blocks, boolean suppressLightUpdates)`
Send a multi-block change.

## Uses of BlockState in org.bukkit.event.block

Fields in org.bukkit.event.block declared as BlockState
Modifier and Type
Field
Description
`protected BlockState`
BlockPlaceEvent.`replacedBlockState`
Methods in org.bukkit.event.block that return BlockState
Modifier and Type
Method
Description
`@NotNull BlockState`
BlockPlaceEvent.`getBlockReplacedState()`
Gets the BlockState for the block which was replaced.
`@NotNull BlockState`
BlockDropItemEvent.`getBlockState()`
Gets the BlockState of the block involved in this event before it was broken.
`@NotNull BlockState`
BlockFadeEvent.`getNewState()`
Gets the state of the block that will be fading, melting or disappearing.
`@NotNull BlockState`
BlockGrowEvent.`getNewState()`
Gets the state of the block where it will form or spread to.
`@NotNull BlockState`
CauldronLevelChangeEvent.`getNewState()`
Gets the new state of the cauldron.
`@NotNull BlockState`
MoistureChangeEvent.`getNewState()`
Gets the new state of the affected block.
Methods in org.bukkit.event.block that return types with arguments of type BlockState
Modifier and Type
Method
Description
`@NotNull List<BlockState>`
BlockFertilizeEvent.`getBlocks()`
Gets a list of all blocks changed by the fertilization.
`@NotNull List<BlockState>`
SpongeAbsorbEvent.`getBlocks()`
Get a list of all blocks to be removed by the sponge.
`@NotNull List<BlockState>`
BlockMultiPlaceEvent.`getReplacedBlockStates()`
Gets a list of blockstates for all blocks which were replaced by the placement of the new blocks.
Constructors in org.bukkit.event.block with parameters of type BlockState
Modifier
Constructor
Description
``
`BlockDropItemEvent(@NotNull Block block, @NotNull BlockState blockState, @NotNull Player player, @NotNull List<Item> items)`
``
`BlockFadeEvent(@NotNull Block block, @NotNull BlockState newState)`
``
`BlockFormEvent(@NotNull Block block, @NotNull BlockState newState)`
``
`BlockGrowEvent(@NotNull Block block, @NotNull BlockState newState)`
``
`BlockPlaceEvent(@NotNull Block placedBlock, @NotNull BlockState replacedBlockState, @NotNull Block placedAgainst, @NotNull ItemStack itemInHand, @NotNull Player thePlayer, boolean canBuild)`
Deprecated.
``
`BlockPlaceEvent(@NotNull Block placedBlock, @NotNull BlockState replacedBlockState, @NotNull Block placedAgainst, @NotNull ItemStack itemInHand, @NotNull Player thePlayer, boolean canBuild, @NotNull EquipmentSlot hand)`
``
`BlockSpreadEvent(@NotNull Block block, @NotNull Block source, @NotNull BlockState newState)`
``
`CauldronLevelChangeEvent(@NotNull Block block, @Nullable Entity entity, @NotNull CauldronLevelChangeEvent.ChangeReason reason, @NotNull BlockState newBlock)`
``
`EntityBlockFormEvent(@NotNull Entity entity, @NotNull Block block, @NotNull BlockState blockstate)`
``
`MoistureChangeEvent(@NotNull Block block, @NotNull BlockState newState)`
Constructor parameters in org.bukkit.event.block with type arguments of type BlockState
Modifier
Constructor
Description
``
`BlockFertilizeEvent(@NotNull Block theBlock, @Nullable Player player, @NotNull List<BlockState> blocks)`
``
`BlockMultiPlaceEvent(@NotNull List<BlockState> states, @NotNull Block clicked, @NotNull ItemStack itemInHand, @NotNull Player thePlayer, boolean canBuild)`
Deprecated.
``
`BlockMultiPlaceEvent(@NotNull List<BlockState> states, @NotNull Block clicked, @NotNull ItemStack itemInHand, @NotNull Player thePlayer, boolean canBuild, EquipmentSlot hand)`
``
`SpongeAbsorbEvent(@NotNull Block block, @NotNull List<BlockState> waterblocks)`

## Uses of BlockState in org.bukkit.event.entity

Methods in org.bukkit.event.entity that return types with arguments of type BlockState
Modifier and Type
Method
Description
`@NotNull List<BlockState>`
EntityCreatePortalEvent.`getBlocks()`
Deprecated.
Gets a list of all blocks associated with the portal.
Constructor parameters in org.bukkit.event.entity with type arguments of type BlockState
Modifier
Constructor
Description
``
`EntityCreatePortalEvent(@NotNull LivingEntity what, @NotNull List<BlockState> blocks, @NotNull PortalType type)`
Deprecated.

## Uses of BlockState in org.bukkit.event.world

Methods in org.bukkit.event.world that return types with arguments of type BlockState
Modifier and Type
Method
Description
`@NotNull List<BlockState>`
PortalCreateEvent.`getBlocks()`
Gets an array list of all the blocks associated with the created portal
`@NotNull List<BlockState>`
StructureGrowEvent.`getBlocks()`
Gets a list of all blocks associated with the structure.
Constructor parameters in org.bukkit.event.world with type arguments of type BlockState
Modifier
Constructor
Description
``
`PortalCreateEvent(@NotNull List<BlockState> blocks, @NotNull World world, @NotNull PortalCreateEvent.CreateReason reason)`
Deprecated.
``
`PortalCreateEvent(@NotNull List<BlockState> blocks, @NotNull World world, @Nullable Entity entity, @NotNull PortalCreateEvent.CreateReason reason)`
``
`StructureGrowEvent(@NotNull Location location, @NotNull TreeType species, boolean bonemeal, @Nullable Player player, @NotNull List<BlockState> blocks)`

## Uses of BlockState in org.bukkit.generator

Methods in org.bukkit.generator that return BlockState
Modifier and Type
Method
Description
`default @NotNull BlockState`
LimitedRegion.`getBlockState(@NotNull Vector location)`
Gets the `BlockState` at a location.
Methods in org.bukkit.generator that return types with arguments of type BlockState
Modifier and Type
Method
Description
`@NotNull List<BlockState>`
LimitedRegion.`getTileEntities()`
Gets a list of all tile entities in the limited region including the buffer zone.
Methods in org.bukkit.generator with parameters of type BlockState
Modifier and Type
Method
Description
`void`
LimitedRegion.`setBlockState(int x, int y, int z, @NotNull BlockState state)`
Sets the `BlockState` at a location.
`default void`
LimitedRegion.`setBlockState(@NotNull Vector location, @NotNull BlockState state)`
Sets the `BlockState` at a location.

## Uses of BlockState in org.bukkit.inventory.meta

Methods in org.bukkit.inventory.meta that return BlockState
Modifier and Type
Method
Description
`@NotNull BlockState`
BlockStateMeta.`getBlockState()`
Returns the currently attached block state for this item or creates a new one if one doesn't exist.
Methods in org.bukkit.inventory.meta with parameters of type BlockState
Modifier and Type
Method
Description
`void`
BlockStateMeta.`setBlockState(@NotNull BlockState blockState)`
Attaches a copy of the passed block state to the item.

## Uses of BlockState in org.bukkit.structure

Methods in org.bukkit.structure that return types with arguments of type BlockState
Modifier and Type
Method
Description
`@NotNull List<BlockState>`
Palette.`getBlocks()`
Gets a copy of the blocks this Palette is made of.