Class ColumnAccessor

java.lang.Object
com.hypixel.hytale.builtin.buildertools.world.ColumnAccessor

public final class ColumnAccessor extends Object
Reads the data a chunk column holds for its whole height: the tint map and the heightmap.

A column is keyed by X and Z alone, so nothing here answers for a Y. Block properties come from SectionAccessor, which resolves the section covering the position.

Nothing here loads a column, so a caller that needs one present prefetches it. An edit reads the same column for thousands of positions, so an instance holds the ones it has resolved.

  • Method Details

    • atWorldCoords

      @Nonnull public static ColumnAccessor atWorldCoords(@Nonnull World world, int centerX, int centerZ, int blockRadius)
      An accessor whose cache covers a square of columns around a centre. A read outside the square still answers, it just costs a lookup in the chunk store.
    • blockChunkAtBlock

      @Nullable public static BlockChunk blockChunkAtBlock(@Nonnull World world, int blockX, int blockZ)
    • heightmapAtBlock

      @Nullable public static HeightmapColumn heightmapAtBlock(@Nonnull World world, int blockX, int blockZ)
    • blockChunkAt

      @Nullable public BlockChunk blockChunkAt(int blockX, int blockZ)
      The data the column covering this block holds for its whole height, or null when the streaming window has not brought the column in.
    • getHeight

      public int getHeight(int blockX, int blockZ)
      The highest non-transparent block of this column, or HeightmapColumn.NO_HEIGHT when the column is empty or absent. A cubic world answers over the full height, a legacy one only over its fixed range.
    • hasColumnInMemory

      public boolean hasColumnInMemory(int blockX, int blockZ)