Interface ChunkGenerator.ChunkData

Enclosing class:
ChunkGenerator

public static interface ChunkGenerator.ChunkData
Data for a Chunk.
  • Method Summary

    Modifier and Type
    Method
    Description
    getBlockData​(int x, int y, int z)
    Get the type and data of the block at x, y, z.
    byte
    getData​(int x, int y, int z)
    Deprecated.
    Uses magic values
    int
    Get the maximum height for the chunk.
    getType​(int x, int y, int z)
    Get the type of the block at x, y, z.
    getTypeAndData​(int x, int y, int z)
    Get the type and data of the block at x, y, z.
    void
    setBlock​(int x, int y, int z, @NotNull BlockData blockData)
    Set the block at x,y,z in the chunk data to material.
    void
    setBlock​(int x, int y, int z, @NotNull Material material)
    Set the block at x,y,z in the chunk data to material.
    void
    setBlock​(int x, int y, int z, @NotNull MaterialData material)
    Set the block at x,y,z in the chunk data to material.
    void
    setRegion​(int xMin, int yMin, int zMin, int xMax, int yMax, int zMax, @NotNull BlockData blockData)
    Set a region of this chunk from xMin, yMin, zMin (inclusive) to xMax, yMax, zMax (exclusive) to material.
    void
    setRegion​(int xMin, int yMin, int zMin, int xMax, int yMax, int zMax, @NotNull Material material)
    Set a region of this chunk from xMin, yMin, zMin (inclusive) to xMax, yMax, zMax (exclusive) to material.
    void
    setRegion​(int xMin, int yMin, int zMin, int xMax, int yMax, int zMax, @NotNull MaterialData material)
    Set a region of this chunk from xMin, yMin, zMin (inclusive) to xMax, yMax, zMax (exclusive) to material.
  • Method Details

    • getMaxHeight

      int getMaxHeight()
      Get the maximum height for the chunk. Setting blocks at or above this height will do nothing.
      Returns:
      the maximum height
    • setBlock

      void setBlock(int x, int y, int z, @NotNull @NotNull Material material)
      Set the block at x,y,z in the chunk data to material. Note: setting blocks outside the chunk's bounds does nothing.
      Parameters:
      x - the x location in the chunk from 0-15 inclusive
      y - the y location in the chunk from 0 (inclusive) - maxHeight (exclusive)
      z - the z location in the chunk from 0-15 inclusive
      material - the type to set the block to
    • setBlock

      void setBlock(int x, int y, int z, @NotNull @NotNull MaterialData material)
      Set the block at x,y,z in the chunk data to material. Setting blocks outside the chunk's bounds does nothing.
      Parameters:
      x - the x location in the chunk from 0-15 inclusive
      y - the y location in the chunk from 0 (inclusive) - maxHeight (exclusive)
      z - the z location in the chunk from 0-15 inclusive
      material - the type to set the block to
    • setBlock

      void setBlock(int x, int y, int z, @NotNull @NotNull BlockData blockData)
      Set the block at x,y,z in the chunk data to material. Setting blocks outside the chunk's bounds does nothing.
      Parameters:
      x - the x location in the chunk from 0-15 inclusive
      y - the y location in the chunk from 0 (inclusive) - maxHeight (exclusive)
      z - the z location in the chunk from 0-15 inclusive
      blockData - the type to set the block to
    • setRegion

      void setRegion(int xMin, int yMin, int zMin, int xMax, int yMax, int zMax, @NotNull @NotNull Material material)
      Set a region of this chunk from xMin, yMin, zMin (inclusive) to xMax, yMax, zMax (exclusive) to material. Setting blocks outside the chunk's bounds does nothing.
      Parameters:
      xMin - minimum x location (inclusive) in the chunk to set
      yMin - minimum y location (inclusive) in the chunk to set
      zMin - minimum z location (inclusive) in the chunk to set
      xMax - maximum x location (exclusive) in the chunk to set
      yMax - maximum y location (exclusive) in the chunk to set
      zMax - maximum z location (exclusive) in the chunk to set
      material - the type to set the blocks to
    • setRegion

      void setRegion(int xMin, int yMin, int zMin, int xMax, int yMax, int zMax, @NotNull @NotNull MaterialData material)
      Set a region of this chunk from xMin, yMin, zMin (inclusive) to xMax, yMax, zMax (exclusive) to material. Setting blocks outside the chunk's bounds does nothing.
      Parameters:
      xMin - minimum x location (inclusive) in the chunk to set
      yMin - minimum y location (inclusive) in the chunk to set
      zMin - minimum z location (inclusive) in the chunk to set
      xMax - maximum x location (exclusive) in the chunk to set
      yMax - maximum y location (exclusive) in the chunk to set
      zMax - maximum z location (exclusive) in the chunk to set
      material - the type to set the blocks to
    • setRegion

      void setRegion(int xMin, int yMin, int zMin, int xMax, int yMax, int zMax, @NotNull @NotNull BlockData blockData)
      Set a region of this chunk from xMin, yMin, zMin (inclusive) to xMax, yMax, zMax (exclusive) to material. Setting blocks outside the chunk's bounds does nothing.
      Parameters:
      xMin - minimum x location (inclusive) in the chunk to set
      yMin - minimum y location (inclusive) in the chunk to set
      zMin - minimum z location (inclusive) in the chunk to set
      xMax - maximum x location (exclusive) in the chunk to set
      yMax - maximum y location (exclusive) in the chunk to set
      zMax - maximum z location (exclusive) in the chunk to set
      blockData - the type to set the blocks to
    • getType

      @NotNull @NotNull Material getType(int x, int y, int z)
      Get the type of the block at x, y, z. Getting blocks outside the chunk's bounds returns air.
      Parameters:
      x - the x location in the chunk from 0-15 inclusive
      y - the y location in the chunk from 0 (inclusive) - maxHeight (exclusive)
      z - the z location in the chunk from 0-15 inclusive
      Returns:
      the type of the block or Material.AIR if x, y or z are outside the chunk's bounds
    • getTypeAndData

      @NotNull @NotNull MaterialData getTypeAndData(int x, int y, int z)
      Get the type and data of the block at x, y, z. Getting blocks outside the chunk's bounds returns air.
      Parameters:
      x - the x location in the chunk from 0-15 inclusive
      y - the y location in the chunk from 0 (inclusive) - maxHeight (exclusive)
      z - the z location in the chunk from 0-15 inclusive
      Returns:
      the type and data of the block or the MaterialData for air if x, y or z are outside the chunk's bounds
    • getBlockData

      @NotNull @NotNull BlockData getBlockData(int x, int y, int z)
      Get the type and data of the block at x, y, z. Getting blocks outside the chunk's bounds returns air.
      Parameters:
      x - the x location in the chunk from 0-15 inclusive
      y - the y location in the chunk from 0 (inclusive) - maxHeight (exclusive)
      z - the z location in the chunk from 0-15 inclusive
      Returns:
      the data of the block or the BlockData for air if x, y or z are outside the chunk's bounds
    • getData

      @Deprecated byte getData(int x, int y, int z)
      Deprecated.
      Uses magic values
      Get the block data at x,y,z in the chunk data. Getting blocks outside the chunk's bounds returns 0.
      Parameters:
      x - the x location in the chunk from 0-15 inclusive
      y - the y location in the chunk from 0 (inclusive) - maxHeight (exclusive)
      z - the z location in the chunk from 0-15 inclusive
      Returns:
      the block data value or air if x, y or z are outside the chunk's bounds