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> pCodec) -
Method Summary
Modifier and TypeMethodDescriptionbooleancarve(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 voidcreateRoom(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 voidcreateTunnel(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 intprotected floatgetThickness(RandomSource pRandom) protected doublebooleanisStartChunk(CaveCarverConfiguration pConfig, RandomSource pRandom) private static booleanshouldSkip(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:
isStartChunkin 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:
carvein 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)
-