net.minecraft.world.gen.feature

public class TreeFeature

extends Feature<TreeFeatureConfig>

net.minecraft.world.level.levelgen.feature.TreeFeature
net.minecraft.world.level.levelgen.feature.TreeFeature
net.minecraft.class_2944
net.minecraft.world.gen.feature.TreeFeature

Field summary

Modifier and TypeField
private static final int
BLOCK_UPDATE_FLAGS
BLOCK_UPDATE_FLAGS
field_31519
FORCE_STATE_AND_NOTIFY_ALL

Constructor summary

ModifierConstructor
public (com.mojang.serialization.Codec<TreeFeatureConfig> codec)

Method summary

Modifier and TypeMethod
public static boolean
isVine(LevelSimulatedReader level, BlockPos pos)
isVine(LevelSimulatedReader level, BlockPos pos)
method_16416(class_3746 arg0, class_2338 arg1)
isVine(TestableWorld world, BlockPos pos)
public static boolean
isAirOrLeaves(LevelSimulatedReader level, BlockPos pos)
isAirOrLeaves(LevelSimulatedReader level, BlockPos pos)
method_16420(class_3746 arg0, class_2338 arg1)
isAirOrLeaves(TestableWorld world, BlockPos pos)
private static void
setBlockKnownShape(LevelWriter level, BlockPos pos, BlockState blockState)
setBlockKnownShape(LevelWriter level, BlockPos pos, BlockState blockState)
method_12774(class_1945 arg0, class_2338 arg1, class_2680 arg2)
setBlockStateWithoutUpdatingNeighbors(ModifiableWorld world, BlockPos pos, BlockState state)
public static boolean
validTreePos(LevelSimulatedReader level, BlockPos pos)
validTreePos(LevelSimulatedReader level, BlockPos pos)
method_27371(class_3746 arg0, class_2338 arg1)
canReplace(TestableWorld world, BlockPos pos)
private boolean
doPlace(WorldGenLevel level, RandomSource random, BlockPos origin, BiConsumer<BlockPos, BlockState> rootSetter, BiConsumer<BlockPos, BlockState> trunkSetter, FoliagePlacer$FoliageSetter foliageSetter, TreeConfiguration config)
doPlace(WorldGenLevel level, RandomSource random, BlockPos origin, BiConsumer<BlockPos, BlockState> rootSetter, BiConsumer<BlockPos, BlockState> trunkSetter, FoliagePlacer$FoliageSetter foliageSetter, TreeConfiguration config)
method_12775(class_5281 arg0, class_5819 arg1, class_2338 arg2, BiConsumer<class_2338, class_2680> arg3, BiConsumer<class_2338, class_2680> arg4, class_4647$class_8179 arg5, class_4643 arg6)
generate(StructureWorldAccess world, Random random, BlockPos pos, BiConsumer<BlockPos, BlockState> rootPlacerReplacer, BiConsumer<BlockPos, BlockState> trunkPlacerReplacer, FoliagePlacer$BlockPlacer blockPlacer, TreeFeatureConfig config)
private int
getMaxFreeTreeHeight(WorldGenLevel level, int maxTreeHeight, BlockPos treePos, TreeConfiguration config)
getMaxFreeTreeHeight(WorldGenLevel level, int maxTreeHeight, BlockPos treePos, TreeConfiguration config)
method_29963(class_5281 arg0, int arg1, class_2338 arg2, class_4643 arg3)
getTopPosition(StructureWorldAccess arg0, int height, BlockPos pos, TreeFeatureConfig config)
protected void
setBlock(LevelWriter level, BlockPos pos, BlockState blockState)
setBlock(LevelWriter level, BlockPos pos, BlockState blockState)
method_13153(class_1945 arg0, class_2338 arg1, class_2680 arg2)
setBlockState(ModifiableWorld arg0, BlockPos arg1, BlockState arg2)
public final boolean
place(FeaturePlaceContext<TreeConfiguration> context)
place(FeaturePlaceContext<TreeConfiguration> context)
method_13151(class_5821<class_4643> arg0)
generate(FeatureContext<TreeFeatureConfig> arg0)
private static VoxelSet
updateLeaves(LevelAccessor level, BoundingBox bounds, Set<BlockPos> logs, Set<BlockPos> decorationSet, Set<BlockPos> rootPositions)
updateLeaves(LevelAccessor level, BoundingBox bounds, Set<BlockPos> logs, Set<BlockPos> decorationSet, Set<BlockPos> rootPositions)
method_23380(class_1936 arg0, class_3341 arg1, Set<class_2338> arg2, Set<class_2338> arg3, Set<class_2338> arg4)
placeLogsAndLeaves(WorldAccess world, BlockBox box, Set<BlockPos> trunkPositions, Set<BlockPos> decorationPositions, Set<BlockPos> rootPositions)
public static List<BlockPos>
getLowestTrunkOrRootOfTree(TreeDecorator$Context context)
getLowestTrunkOrRootOfTree(TreeDecorator$Context context)
method_66482(class_4662$class_7402 arg0)
getLeafLitterPositions(TreeDecorator$Generator decoratorGenerator)