Class CaveWorldCarver
java.lang.Object
net.minecraft.world.level.levelgen.carver.WorldCarver<CaveCarverConfiguration>
net.minecraft.world.level.levelgen.carver.CaveWorldCarver
- Direct Known Subclasses:
NetherWorldCarver
A carver which creates Minecraft's most common cave types.
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.level.levelgen.carver.WorldCarver
WorldCarver.CarveSkipChecker
-
Field Summary
Fields inherited from class net.minecraft.world.level.levelgen.carver.WorldCarver
AIR, CANYON, CAVE, CAVE_AIR, LAVA, liquids, NETHER_CAVE, WATER
-
Constructor Summary
ConstructorsConstructorDescriptionCaveWorldCarver
(com.mojang.serialization.Codec<CaveCarverConfiguration> p_159194_) -
Method Summary
Modifier and TypeMethodDescriptionboolean
carve
(CarvingContext pContext, CaveCarverConfiguration pConfig, ChunkAccess pChunk, Function<BlockPos, Holder<Biome>> pBiomeAccessor, RandomSource pRandom, Aquifer pAquifer, ChunkPos pChunkPos, CarvingMask pCarvingMask) Carves the given chunk with caves that originate from the givenchunkPos
.protected void
createRoom
(CarvingContext pContext, CaveCarverConfiguration pConfig, ChunkAccess pChunk, Function<BlockPos, Holder<Biome>> pBiomeAccessor, Aquifer pAquifer, double pX, double pY, double pZ, float pRadius, double pHorizontalVerticalRatio, CarvingMask pCarvingMask, WorldCarver.CarveSkipChecker pSkipChecker) protected void
createTunnel
(CarvingContext pContext, CaveCarverConfiguration pConfig, ChunkAccess pChunk, Function<BlockPos, Holder<Biome>> pBiomeAccessor, long pSeed, Aquifer pAquifer, double pX, double pY, double pZ, double pHorizontalRadiusMultiplier, double pVerticalRadiusMultiplier, float pThickness, float pYaw, float pPitch, int pBranchIndex, int pBranchCount, double pHorizontalVerticalRatio, CarvingMask pCarvingMask, WorldCarver.CarveSkipChecker pSkipChecker) protected int
protected float
getThickness
(RandomSource pRandom) protected double
boolean
isStartChunk
(CaveCarverConfiguration pConfig, RandomSource pRandom) private static boolean
shouldSkip
(double pRelative, double pRelativeY, double pRelativeZ, double pMinrelativeY) Methods inherited from class net.minecraft.world.level.levelgen.carver.WorldCarver
canReach, canReplaceBlock, carveBlock, carveEllipsoid, configured, configuredCodec, getRange
-
Constructor Details
-
CaveWorldCarver
-
-
Method Details
-
isStartChunk
- Specified by:
isStartChunk
in classWorldCarver<CaveCarverConfiguration>
-
carve
public boolean carve(CarvingContext pContext, CaveCarverConfiguration pConfig, ChunkAccess pChunk, Function<BlockPos, Holder<Biome>> pBiomeAccessor, RandomSource pRandom, Aquifer pAquifer, ChunkPos pChunkPos, CarvingMask pCarvingMask) Carves the given chunk with caves that originate from the givenchunkPos
. This method is invoked 289 times in order to generate each chunk (once for every position in an 8 chunk radius, or 17x17 chunk area, centered around the target chunk).- Specified by:
carve
in classWorldCarver<CaveCarverConfiguration>
- Parameters:
pChunk
- The chunk to be carvedpChunkPos
- The chunk position this carver is being called from- See Also:
-
getCaveBound
protected int getCaveBound() -
getThickness
-
getYScale
protected double getYScale() -
createRoom
protected void createRoom(CarvingContext pContext, CaveCarverConfiguration pConfig, ChunkAccess pChunk, Function<BlockPos, Holder<Biome>> pBiomeAccessor, Aquifer pAquifer, double pX, double pY, double pZ, float pRadius, double pHorizontalVerticalRatio, CarvingMask pCarvingMask, WorldCarver.CarveSkipChecker pSkipChecker) -
createTunnel
protected void createTunnel(CarvingContext pContext, CaveCarverConfiguration pConfig, ChunkAccess pChunk, Function<BlockPos, Holder<Biome>> pBiomeAccessor, long pSeed, Aquifer pAquifer, double pX, double pY, double pZ, double pHorizontalRadiusMultiplier, double pVerticalRadiusMultiplier, float pThickness, float pYaw, float pPitch, int pBranchIndex, int pBranchCount, double pHorizontalVerticalRatio, CarvingMask pCarvingMask, WorldCarver.CarveSkipChecker pSkipChecker) -
shouldSkip
private static boolean shouldSkip(double pRelative, double pRelativeY, double pRelativeZ, double pMinrelativeY)
-