Class RandomSpreadFoliagePlacer

java.lang.Object
net.minecraft.world.gen.foliage.FoliagePlacer
net.minecraft.world.gen.foliage.RandomSpreadFoliagePlacer

public class RandomSpreadFoliagePlacer extends FoliagePlacer
Mappings:
Namespace Name
named net/minecraft/world/gen/foliage/RandomSpreadFoliagePlacer
intermediary net/minecraft/class_5928
official efg
  • Field Details

    • CODEC

      public static final com.mojang.serialization.MapCodec<RandomSpreadFoliagePlacer> CODEC
      Mappings:
      Namespace Name Mixin selector
      named CODEC Lnet/minecraft/world/gen/foliage/RandomSpreadFoliagePlacer;CODEC:Lcom/mojang/serialization/MapCodec;
      intermediary field_29297 Lnet/minecraft/class_5928;field_29297:Lcom/mojang/serialization/MapCodec;
      official a Lefg;a:Lcom/mojang/serialization/MapCodec;
    • foliageHeight

      private final IntProvider foliageHeight
      Mappings:
      Namespace Name Mixin selector
      named foliageHeight Lnet/minecraft/world/gen/foliage/RandomSpreadFoliagePlacer;foliageHeight:Lnet/minecraft/util/math/intprovider/IntProvider;
      intermediary field_29298 Lnet/minecraft/class_5928;field_29298:Lnet/minecraft/class_6017;
      official b Lefg;b:Lbpm;
    • leafPlacementAttempts

      private final int leafPlacementAttempts
      Mappings:
      Namespace Name Mixin selector
      named leafPlacementAttempts Lnet/minecraft/world/gen/foliage/RandomSpreadFoliagePlacer;leafPlacementAttempts:I
      intermediary field_29299 Lnet/minecraft/class_5928;field_29299:I
      official c Lefg;c:I
  • Constructor Details

    • RandomSpreadFoliagePlacer

      public RandomSpreadFoliagePlacer(IntProvider radius, IntProvider offset, IntProvider foliageHeight, int leafPlacementAttempts)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/world/gen/foliage/RandomSpreadFoliagePlacer;<init>(Lnet/minecraft/util/math/intprovider/IntProvider;Lnet/minecraft/util/math/intprovider/IntProvider;Lnet/minecraft/util/math/intprovider/IntProvider;I)V
      intermediary <init> Lnet/minecraft/class_5928;<init>(Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;I)V
      official <init> Lefg;<init>(Lbpm;Lbpm;Lbpm;I)V
  • Method Details

    • getType

      protected FoliagePlacerType<?> getType()
      Specified by:
      getType in class FoliagePlacer
      Mappings:
      Namespace Name Mixin selector
      named getType Lnet/minecraft/world/gen/foliage/FoliagePlacer;getType()Lnet/minecraft/world/gen/foliage/FoliagePlacerType;
      intermediary method_28843 Lnet/minecraft/class_4647;method_28843()Lnet/minecraft/class_4648;
      official a Lefb;a()Lefc;
    • generate

      protected void generate(TestableWorld world, FoliagePlacer.BlockPlacer placer, Random random, TreeFeatureConfig config, int trunkHeight, FoliagePlacer.TreeNode treeNode, int foliageHeight, int radius, int offset)
      This is the main method used to generate foliage.
      Specified by:
      generate in class FoliagePlacer
      Mappings:
      Namespace Name Mixin selector
      named generate Lnet/minecraft/world/gen/foliage/FoliagePlacer;generate(Lnet/minecraft/world/TestableWorld;Lnet/minecraft/world/gen/foliage/FoliagePlacer$BlockPlacer;Lnet/minecraft/util/math/random/Random;Lnet/minecraft/world/gen/feature/TreeFeatureConfig;ILnet/minecraft/world/gen/foliage/FoliagePlacer$TreeNode;III)V
      intermediary method_23448 Lnet/minecraft/class_4647;method_23448(Lnet/minecraft/class_3746;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;Lnet/minecraft/class_4643;ILnet/minecraft/class_4647$class_5208;III)V
      official a Lefb;a(Ldcm;Lefb$b;Layo;Leel;ILefb$a;III)V
    • getRandomHeight

      public int getRandomHeight(Random random, int trunkHeight, TreeFeatureConfig config)
      Specified by:
      getRandomHeight in class FoliagePlacer
      Mappings:
      Namespace Name Mixin selector
      named getRandomHeight Lnet/minecraft/world/gen/foliage/FoliagePlacer;getRandomHeight(Lnet/minecraft/util/math/random/Random;ILnet/minecraft/world/gen/feature/TreeFeatureConfig;)I
      intermediary method_26989 Lnet/minecraft/class_4647;method_26989(Lnet/minecraft/class_5819;ILnet/minecraft/class_4643;)I
      official a Lefb;a(Layo;ILeel;)I
    • isInvalidForLeaves

      protected boolean isInvalidForLeaves(Random random, int dx, int y, int dz, int radius, boolean giantTrunk)
      Used to exclude certain positions such as corners when creating a square of leaves.
      Specified by:
      isInvalidForLeaves in class FoliagePlacer
      Mappings:
      Namespace Name Mixin selector
      named isInvalidForLeaves Lnet/minecraft/world/gen/foliage/FoliagePlacer;isInvalidForLeaves(Lnet/minecraft/util/math/random/Random;IIIIZ)Z
      intermediary method_23451 Lnet/minecraft/class_4647;method_23451(Lnet/minecraft/class_5819;IIIIZ)Z
      official a Lefb;a(Layo;IIIIZ)Z