Package net.minecraft.world.gen.foliage
Class BlobFoliagePlacer
java.lang.Object
net.minecraft.world.gen.foliage.FoliagePlacer
net.minecraft.world.gen.foliage.BlobFoliagePlacer
- Direct Known Subclasses:
BushFoliagePlacer,LargeOakFoliagePlacer
public class BlobFoliagePlacer extends FoliagePlacer
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.gen.foliage.FoliagePlacer
FoliagePlacer.TreeNode -
Field Summary
Fields Modifier and Type Field Description static com.mojang.serialization.Codec<BlobFoliagePlacer>CODECprotected intheightFields inherited from class net.minecraft.world.gen.foliage.FoliagePlacer
offset, radius, TYPE_CODEC -
Constructor Summary
Constructors Constructor Description BlobFoliagePlacer(UniformIntDistribution radius, UniformIntDistribution offset, int height) -
Method Summary
Modifier and Type Method Description protected static <P extends BlobFoliagePlacer>
com.mojang.datafixers.Products.P3<com.mojang.serialization.codecs.RecordCodecBuilder.Mu<P>,UniformIntDistribution,UniformIntDistribution,Integer>createCodec(com.mojang.serialization.codecs.RecordCodecBuilder.Instance<P> builder)protected voidgenerate(ModifiableTestableWorld world, Random random, TreeFeatureConfig config, int trunkHeight, FoliagePlacer.TreeNode treeNode, int foliageHeight, int radius, Set<BlockPos> leaves, int offset, BlockBox box)This is the main method used to generate foliage.intgetRandomHeight(Random random, int trunkHeight, TreeFeatureConfig config)protected FoliagePlacerType<?>getType()protected booleanisInvalidForLeaves(Random random, int baseHeight, int dx, int y, int dz, boolean giantTrunk)Used to exclude certain positions such as corners when creating a square of leaves.Methods inherited from class net.minecraft.world.gen.foliage.FoliagePlacer
fillFoliagePlacerFields, generate, generateSquare, getRandomRadius, isPositionInvalid
-
Field Details
-
CODEC
-
height
protected final int height
-
-
Constructor Details
-
BlobFoliagePlacer
-
-
Method Details
-
createCodec
protected static <P extends BlobFoliagePlacer> com.mojang.datafixers.Products.P3<com.mojang.serialization.codecs.RecordCodecBuilder.Mu<P>,UniformIntDistribution,UniformIntDistribution,Integer> createCodec(com.mojang.serialization.codecs.RecordCodecBuilder.Instance<P> builder) -
getType
- Specified by:
getTypein classFoliagePlacer
-
generate
protected void generate(ModifiableTestableWorld world, Random random, TreeFeatureConfig config, int trunkHeight, FoliagePlacer.TreeNode treeNode, int foliageHeight, int radius, Set<BlockPos> leaves, int offset, BlockBox box)This is the main method used to generate foliage.- Specified by:
generatein classFoliagePlacer
-
getRandomHeight
- Specified by:
getRandomHeightin classFoliagePlacer
-
isInvalidForLeaves
protected boolean isInvalidForLeaves(Random random, int baseHeight, int dx, int y, int dz, boolean giantTrunk)Used to exclude certain positions such as corners when creating a square of leaves.- Specified by:
isInvalidForLeavesin classFoliagePlacer
-