Interface GeodeBlockSettings

All Superinterfaces:
Wrapper

@NullMarked @AsOf("3.0.0") public interface GeodeBlockSettings extends Wrapper
The blocks used for the layers and inner placements of a geode.
Since:
3.0.0
See Also:
  • Method Details

    • fillingProvider

      @AsOf("3.0.0") BlockStateProvider fillingProvider()
      The block state provider used for the filling layer. This is air in vanilla geodes.
      Returns:
      the filling provider
      Since:
      3.0.0
    • innerLayerProvider

      @AsOf("3.0.0") BlockStateProvider innerLayerProvider()
      The block state provider used for the inner layer. This is amethyst block in vanilla geodes.
      Returns:
      the inner layer provider
      Since:
      3.0.0
    • alternateInnerLayerProvider

      @AsOf("3.0.0") BlockStateProvider alternateInnerLayerProvider()
      The block state provider used for the inner layer's alternate block. This is budding amethyst in vanilla geodes.
      Returns:
      the alternate inner layer provider
      Since:
      3.0.0
    • middleLayerProvider

      @AsOf("3.0.0") BlockStateProvider middleLayerProvider()
      The block state provider used for the middle layer. This is calcite in vanilla geodes.
      Returns:
      the middle layer provider
      Since:
      3.0.0
    • outerLayerProvider

      @AsOf("3.0.0") BlockStateProvider outerLayerProvider()
      The block state provider used for the outer layer. This is smooth basalt in vanilla geodes.
      Returns:
      the outer layer provider
      Since:
      3.0.0
    • innerPlacements

      @AsOf("3.0.0") List<BlockData> innerPlacements()
      The block states placed within the geode, adjacent to the alternate inner layer block(s) by default. In vanilla geodes these are the small, medium, and large amethyst buds and the amethyst cluster.
      Returns:
      an immutable list of inner placements
      Since:
      3.0.0
    • cannotReplace

      @AsOf("3.1.0") TagSet<Material> cannotReplace()
      The blocks which this geode cannot replace. Vanilla geodes use #minecraft:features_cannot_replace.
      Returns:
      the set of blocks that cannot be replaced
      Since:
      3.1.0
    • invalidBlocks

      @AsOf("3.1.0") TagSet<Material> invalidBlocks()
      A listing of invalid blocks near which the geode will not generate.
      Returns:
      the block tag of invalid blocks
      Since:
      3.1.0
    • toBuilder

      @AsOf("3.0.0") default GeodeBlockSettings.Builder toBuilder()
      Converts this object back to a builder.
      Returns:
      a builder with the same values as this object
      Since:
      3.0.0
    • of

      @AsOf("3.0.0") static GeodeBlockSettings of(BlockStateProvider fillingProvider, BlockStateProvider innerLayerProvider, BlockStateProvider alternateInnerLayerProvider, BlockStateProvider middleLayerProvider, BlockStateProvider outerLayerProvider, List<BlockData> innerPlacements, TagSet<Material> cannotReplace, TagSet<Material> invalidBlocks)
      Creates a new geode block settings.
      Parameters:
      fillingProvider - the block state provider used for the filling layer
      innerLayerProvider - the block state provider used for the inner layer
      alternateInnerLayerProvider - the block state provider used for the inner layer's alternate block
      middleLayerProvider - the block state provider used for the middle layer
      outerLayerProvider - the block state provider used for the outer layer
      innerPlacements - the block states placed within the geode
      cannotReplace - the block tagset listing which blocks the geode cannot replace
      invalidBlocks - the block tagset listing invalid blocks
      Returns:
      a new geode block settings
      Since:
      3.0.0
    • builder

      @AsOf("3.0.0") static GeodeBlockSettings.Builder builder()
      Creates a new builder.
      Returns:
      a new builder
      Since:
      3.0.0
    • decode

      @Internal static GeodeBlockSettings decode(Object minecraftSettings)