Class SurfaceRuleBuilder

java.lang.Object
tech.anonymoushacker1279.immersiveweapons.world.level.levelgen.SurfaceRuleBuilder

public class SurfaceRuleBuilder extends Object
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final record 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final net.minecraft.world.level.levelgen.SurfaceRules.RuleSource[]
     
  • Method Summary

    Modifier and Type
    Method
    Description
    biome(net.minecraft.resources.ResourceKey<net.minecraft.world.level.biome.Biome> biomeKey)
    Restricts surface to only one biome.
    net.minecraft.world.level.levelgen.SurfaceRules.RuleSource
    Finalize rule building process.
    filler(net.minecraft.world.level.block.state.BlockState state)
    Set biome filler with specified BlockState.
    rule(int priority, net.minecraft.world.level.levelgen.SurfaceRules.RuleSource rule)
    Allows adding a custom rule.
    start(net.minecraft.core.HolderGetter<net.minecraft.world.level.biome.Biome> biomeGetter)
     
    subsurface(net.minecraft.world.level.block.state.BlockState state, int depth)
    Set biome subsurface with specified BlockState.
    surface(net.minecraft.world.level.block.state.BlockState state)
    Set biome surface with specified BlockState.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • RULE_SOURCES

      public static final net.minecraft.world.level.levelgen.SurfaceRules.RuleSource[] RULE_SOURCES
  • Method Details

    • start

      public static SurfaceRuleBuilder start(net.minecraft.core.HolderGetter<net.minecraft.world.level.biome.Biome> biomeGetter)
    • biome

      public SurfaceRuleBuilder biome(net.minecraft.resources.ResourceKey<net.minecraft.world.level.biome.Biome> biomeKey)
      Restricts surface to only one biome.
      Parameters:
      biomeKey - ResourceKey for the Biome.
      Returns:
      same SurfaceRuleBuilder instance.
    • surface

      public SurfaceRuleBuilder surface(net.minecraft.world.level.block.state.BlockState state)
      Set biome surface with specified BlockState. Example - block of grass in the Overworld biomes
      Parameters:
      state - BlockState for the ground cover.
      Returns:
      same SurfaceRuleBuilder instance.
    • subsurface

      public SurfaceRuleBuilder subsurface(net.minecraft.world.level.block.state.BlockState state, int depth)
      Set biome subsurface with specified BlockState. Example - dirt in the Overworld biomes.
      Parameters:
      state - BlockState for the subterranean layer.
      depth - block layer depth.
      Returns:
      same SurfaceRuleBuilder instance.
    • filler

      public SurfaceRuleBuilder filler(net.minecraft.world.level.block.state.BlockState state)
      Set biome filler with specified BlockState. Example - stone in the Overworld biomes. The rule is added with priority 10.
      Parameters:
      state - BlockState for filling.
      Returns:
      same SurfaceRuleBuilder instance.
    • build

      public net.minecraft.world.level.levelgen.SurfaceRules.RuleSource build()
      Finalize rule building process.
      Returns:
      SurfaceRules.RuleSource.
    • rule

      public SurfaceRuleBuilder rule(int priority, net.minecraft.world.level.levelgen.SurfaceRules.RuleSource rule)
      Allows adding a custom rule.
      Parameters:
      priority - rule priority, lower values = higher priority (rule will be applied before others).
      rule - custom SurfaceRules.RuleSource.
      Returns:
      same SurfaceRuleBuilder instance.