Class SpreadingRootPlacer

java.lang.Object
com.github.darksoulq.abyssallib.world.gen.feature.tree.root.RootPlacer
com.github.darksoulq.abyssallib.world.gen.feature.tree.root.SpreadingRootPlacer

public class SpreadingRootPlacer extends RootPlacer
A highly configurable root placer that replaces subterranean dirt compositions with designated root structures radially outward from the base trunk origin without actively displacing the trunk vertically.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    The codec mapping runtime instantiation states perfectly into native generic serialized memory footprints securely natively.
    The formally registered type enumeration linking the placer exactly into the standard registry maps natively securely.
  • Constructor Summary

    Constructors
    Constructor
    Description
    SpreadingRootPlacer(int radius, int depth)
    Constructs a sprawling subterranean block replacement algorithm generating spreading logic correctly organically.
  • Method Summary

    Modifier and Type
    Method
    Description
    Retrieves the formalized registry definition natively establishing type identities seamlessly securely natively.
    org.bukkit.Location
    placeRoots(WorldGenAccess level, Random random, org.bukkit.Location origin, BlockStateProvider rootProvider, BlockStateProvider dirtProvider)
    Replaces standard subterranean blocks with specified targeted substrates radially descending seamlessly outward from the initial anchoring generation coordinate natively.

    Methods inherited from class Object

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

    • CODEC

      public static final Codec<SpreadingRootPlacer> CODEC
      The codec mapping runtime instantiation states perfectly into native generic serialized memory footprints securely natively.
    • TYPE

      public static final RootPlacerType<SpreadingRootPlacer> TYPE
      The formally registered type enumeration linking the placer exactly into the standard registry maps natively securely.
  • Constructor Details

    • SpreadingRootPlacer

      public SpreadingRootPlacer(int radius, int depth)
      Constructs a sprawling subterranean block replacement algorithm generating spreading logic correctly organically.
      Parameters:
      radius - The fundamental mathematical limit bounding lateral subterranean spread limits.
      depth - The foundational limit defining absolute vertical penetration logic calculations.
  • Method Details

    • placeRoots

      public org.bukkit.Location placeRoots(WorldGenAccess level, Random random, org.bukkit.Location origin, BlockStateProvider rootProvider, BlockStateProvider dirtProvider)
      Replaces standard subterranean blocks with specified targeted substrates radially descending seamlessly outward from the initial anchoring generation coordinate natively.
      Specified by:
      placeRoots in class RootPlacer
      Parameters:
      level - The formal generation engine accessing actively modified map contexts.
      random - The seeded random driver injecting procedural calculation noise seamlessly natively.
      origin - The requested base origin anchoring the algorithmic spread calculations properly.
      rootProvider - The provider defining explicitly what physical substrate overrides valid terrain blocks securely.
      dirtProvider - The basic fallback generation ground provider natively.
      Returns:
      The thoroughly unmodified absolute native trunk origin location directly.
    • getType

      public RootPlacerType<?> getType()
      Retrieves the formalized registry definition natively establishing type identities seamlessly securely natively.
      Specified by:
      getType in class RootPlacer
      Returns:
      The specific registry type interface implementation securely.