Interface BlockVolume

All Superinterfaces:
Volume
All Known Subinterfaces:
ArchetypeVolume, BlockChunk, BlockEntityArchetypeVolume, BlockEntityArchetypeVolume.Immutable, BlockEntityArchetypeVolume.Modifiable<M>, BlockEntityArchetypeVolume.Mutable, BlockEntityArchetypeVolume.Streamable<B>, BlockEntityArchetypeVolume.Unmodifiable<U>, BlockEntityVolume, BlockEntityVolume.Modifiable<M>, BlockEntityVolume.Mutable, BlockEntityVolume.Streamable<T>, BlockEntityVolume.Unmodifiable<U>, BlockVolume.Immutable, BlockVolume.Modifiable<M>, BlockVolume.Mutable, BlockVolume.Streamable<B>, BlockVolume.Unmodifiable<U>, Chunk<P>, ClientWorld, EntityArchetypeVolume.Immutable, EntityArchetypeVolume.Unmodifiable<U>, EntityVolume.Immutable, EntityVolume.Unmodifiable<U>, EnvironmentalVolume, GenerationChunk, GenerationRegion, InteractableVolume, PhysicsAwareMutableBlockVolume<P>, PrimitiveGameVolume, Region<R>, Schematic, ServerWorld, TrackedVolume, UpdatableVolume, WeatherAwareVolume, World<W,L>, WorldChunk, WorldLike<P>

public interface BlockVolume extends Volume
  • Method Details Link icon

    • blockPalette Link icon

      Palette<BlockState,BlockType> blockPalette()
      Gets the Palette in use for this particular Volume. It is not guaranteed that the palette is the same across smaller Volumes that may be contained within this volume. An example can be the difference between a Chunk and World's palette.
      Returns:
      The block palette in use for this volume
    • block Link icon

      BlockState block(int x, int y, int z)
    • block Link icon

      default BlockState block(Vector3i vector3i)
    • fluid Link icon

      FluidState fluid(int x, int y, int z)
    • fluid Link icon

      default FluidState fluid(Vector3i vector3i)
    • highestYAt Link icon

      int highestYAt(int x, int z)
      Get the y value of the highest block that sunlight can reach in the given column.

      This method ignores all transparent blocks, providing the highest opaque block.

      Parameters:
      x - The x column value
      z - The z column value
      Returns:
      The y value of the highest opaque block
    • highestYAt Link icon

      default int highestYAt(Vector2i column)
      Get the y value of the highest block that sunlight can reach in the given column.

      This method ignores all transparent blocks, providing the highest opaque block.

      Parameters:
      column - The column value
      Returns:
      The y value of the highest opaque block
    • highestPositionAt Link icon

      default Vector3i highestPositionAt(Vector3i position)
      Get the ServerLocation of the highest block that sunlight can reach in the given column.

      This method ignores all transparent blocks, providing the highest opaque block.

      Parameters:
      position - The column position
      Returns:
      The highest opaque position