Interface BlockVolume.Modifiable<M extends BlockVolume.Modifiable<M>>

All Superinterfaces:
BlockVolume, BlockVolume.Streamable<M>, MutableVolume, Volume
All Known Subinterfaces:
ArchetypeVolume, BlockEntityArchetypeVolume.Modifiable<M>, BlockEntityArchetypeVolume.Mutable, BlockEntityVolume.Modifiable<M>, BlockEntityVolume.Mutable, BlockVolume.Mutable, Chunk<P>, ClientWorld, EntityVolume.Modifiable<M>, EntityVolume.Mutable, GenerationChunk, GenerationRegion, PhysicsAwareMutableBlockVolume<P>, Schematic, ServerWorld, World<W,​L>, WorldChunk, WorldLike<P>
Enclosing interface:
BlockVolume

public static interface BlockVolume.Modifiable<M extends BlockVolume.Modifiable<M>> extends BlockVolume.Streamable<M>, MutableVolume
  • Method Details

    • setBlock

      default boolean setBlock(Vector3i position, BlockState block)
      Sets the block at the given position in the world.
      Parameters:
      position - The position
      block - The block
      Returns:
      Whether the block change was successful
      Throws:
      PositionOutOfBoundsException - If the position is outside of the bounds of the volume
    • setBlock

      boolean setBlock(int x, int y, int z, BlockState block)
      Sets the block at the given position in the world.
      Parameters:
      x - The X position
      y - The Y position
      z - The Z position
      block - The block
      Returns:
      Whether the block change was successful
      Throws:
      PositionOutOfBoundsException - If the position is outside of the bounds of the volume
    • removeBlock

      default boolean removeBlock(Vector3i position)
    • removeBlock

      boolean removeBlock(int x, int y, int z)