Package net.minecraft.world.level.chunk
Class ChunkAccess
java.lang.Object
net.minecraft.world.level.chunk.ChunkAccess
- All Implemented Interfaces:
BiomeManager.NoiseBiomeSource,BlockGetter,LightChunk,StructureAccess,LevelHeightAccessor,IAttachmentHolder,IBlockGetterExtension
- Direct Known Subclasses:
LevelChunk,ProtoChunk
public abstract class ChunkAccess
extends Object
implements BiomeManager.NoiseBiomeSource, LightChunk, StructureAccess, IAttachmentHolder
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final recordstatic final recordNested classes/interfaces inherited from interface net.minecraft.world.level.BlockGetter
BlockGetter.BlockStepVisitor -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AttachmentHolder.AsFieldprotected BlendingDataprotected final Map<BlockPos, BlockEntity> private BiomeGenerationSettingsDeprecated.protected final ChunkPosprivate static final it.unimi.dsi.fastutil.longs.LongSetprotected final Map<Heightmap.Types, Heightmap> private longprivate booleanprotected final LevelHeightAccessorprivate static final org.slf4j.Loggerstatic final intprotected NoiseChunkprotected final Map<BlockPos, CompoundTag> protected final it.unimi.dsi.fastutil.shorts.ShortList[]protected final LevelChunkSection[]protected ChunkSkyLightSourcesprivate final Map<Structure, StructureStart> private booleanprotected final UpgradeData -
Constructor Summary
ConstructorsConstructorDescriptionChunkAccess(ChunkPos pChunkPos, UpgradeData pUpgradeData, LevelHeightAccessor pLevelHeightAccessor, PalettedContainerFactory pPalettedContainerFactory, long pInhabitedTime, LevelChunkSection[] pSections, BlendingData pBlendingData) -
Method Summary
Modifier and TypeMethodDescriptionabstract voidvoidaddPackedPostProcess(it.unimi.dsi.fastutil.shorts.ShortList pOffsets, int pIndex) voidaddReferenceForStructure(Structure p_223007_, long p_223008_) booleancarverBiome(Supplier<BiomeGenerationSettings> pCaverBiomeSettingsSupplier) Deprecated.voidfillBiomesFromNoise(BiomeResolver pResolver, Climate.Sampler pSampler) final voidfindBlockLightSources(BiConsumer<BlockPos, BlockState> p_285269_) voidfindBlocks(Predicate<BlockState> pPredicate, BiConsumer<BlockPos, BlockState> pOutput) voidfindBlocks(Predicate<BlockState> p_285343_, BiPredicate<BlockState, BlockPos> fineFilter, BiConsumer<BlockPos, BlockState> p_285030_) getBlockEntityNbt(BlockPos pPos) abstract CompoundTaggetBlockEntityNbtForSaving(BlockPos pPos, HolderLookup.Provider pRegistries) abstract TickContainerAccess<Block> <T> TgetData(AttachmentType<T> type) Returns the data attachment of the given type.<T> TgetExistingDataOrNull(AttachmentType<T> type) abstract TickContainerAccess<Fluid> intintgetHeight(Heightmap.Types pType, int pX, int pZ) intintDeprecated, for removal: This API element is subject to removal in a future version.longgetLevel()getListenerRegistry(int pSectionY) intgetMinY()getNoiseBiome(int p_204347_, int p_204348_, int p_204349_) Gets the biome at the given quart positions.getOrCreateNoiseChunk(Function<ChunkAccess, NoiseChunk> pNoiseChunkCreator) static it.unimi.dsi.fastutil.shorts.ShortListgetOrCreateOffsetList(it.unimi.dsi.fastutil.shorts.ShortList[] pPackedPositions, int pIndex) abstract ChunkStatusgetPos()it.unimi.dsi.fastutil.shorts.ShortList[]it.unimi.dsi.fastutil.longs.LongSetgetReferencesForStructure(Structure p_223017_) getSection(int pIndex) getStartForStructure(Structure p_223005_) abstract ChunkAccess.PackedTicksgetTicksForSerialization(long pGametime) booleanbooleanReturnstrueif there is any data attachments,falseotherwise.booleanhasData(AttachmentType<?> type) Returnstrueif there is a data attachment of the give type,falseotherwise.booleanvoidincrementInhabitedTime(long pAmount) voidbooleanbooleanbooleanbooleanbooleanisYSpaceEmpty(int pStartY, int pEndY) voidvoidstatic ProblemReporter.PathElementproblemPath(ChunkPos pPos) final voidreadAttachmentsFromNBT(HolderLookup.Provider provider, CompoundTag tag) FOR INTERNAL USE ONLYabstract voidremoveBlockEntity(BlockPos pPos) <T> TremoveData(AttachmentType<T> type) Removes the data attachment of the given type.private static voidreplaceMissingSections(PalettedContainerFactory pPalettedContainerFactory, LevelChunkSection[] pSections) voidsetAllReferences(Map<Structure, it.unimi.dsi.fastutil.longs.LongSet> p_187663_) voidsetAllStarts(Map<Structure, StructureStart> pStructureStarts) abstract voidsetBlockEntity(BlockEntity pBlockEntity) voidsetBlockEntityNbt(CompoundTag pTag) setBlockState(BlockPos pPos, BlockState pState) abstract BlockStatesetBlockState(BlockPos pPos, BlockState pState, int pFlags) <T> TsetData(AttachmentType<T> type, T data) Sets the data attachment of the given type.voidsetHeightmap(Heightmap.Types pType, long[] pData) voidsetInhabitedTime(long pInhabitedTime) voidsetLightCorrect(boolean pLightCorrect) voidsetStartForStructure(Structure p_223010_, StructureStart p_223011_) booleanfinal CompoundTagwriteAttachmentsToNBT(HolderLookup.Provider provider) FOR INTERNAL USE ONLYMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.world.level.BlockGetter
clip, clipWithInteractionOverride, getBlockEntity, getBlockEntity, getBlockFloorHeight, getBlockFloorHeight, getBlockState, getBlockStates, getFluidState, getLightEmission, isBlockInLineMethods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder
getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncData, syncDataMethods inherited from interface net.neoforged.neoforge.common.extensions.IBlockGetterExtension
getAuxLightManager, getAuxLightManager, getModelDataMethods inherited from interface net.minecraft.world.level.LevelHeightAccessor
getMaxSectionY, getMaxY, getMinSectionY, getSectionIndex, getSectionIndexFromSectionY, getSectionsCount, getSectionYFromSectionIndex, isInsideBuildHeight, isOutsideBuildHeight, isOutsideBuildHeight
-
Field Details
-
NO_FILLED_SECTION
public static final int NO_FILLED_SECTION- See Also:
-
LOGGER
private static final org.slf4j.Logger LOGGER -
EMPTY_REFERENCE_SET
private static final it.unimi.dsi.fastutil.longs.LongSet EMPTY_REFERENCE_SET -
postProcessing
protected final it.unimi.dsi.fastutil.shorts.ShortList[] postProcessing -
unsaved
private volatile boolean unsaved -
isLightCorrect
private volatile boolean isLightCorrect -
chunkPos
-
inhabitedTime
private long inhabitedTime -
carverBiomeSettings
Deprecated. -
noiseChunk
-
upgradeData
-
blendingData
-
heightmaps
-
skyLightSources
-
structureStarts
-
structuresRefences
-
pendingBlockEntities
-
blockEntities
-
levelHeightAccessor
-
sections
-
attachmentHolder
-
-
Constructor Details
-
ChunkAccess
public ChunkAccess(ChunkPos pChunkPos, UpgradeData pUpgradeData, LevelHeightAccessor pLevelHeightAccessor, PalettedContainerFactory pPalettedContainerFactory, long pInhabitedTime, @Nullable LevelChunkSection[] pSections, @Nullable BlendingData pBlendingData)
-
-
Method Details
-
replaceMissingSections
private static void replaceMissingSections(PalettedContainerFactory pPalettedContainerFactory, LevelChunkSection[] pSections) -
getListenerRegistry
-
setBlockState
-
setBlockState
-
setBlockEntity
-
addEntity
-
getHighestFilledSectionIndex
public int getHighestFilledSectionIndex() -
getHighestSectionPosition
Deprecated, for removal: This API element is subject to removal in a future version. -
getBlockEntitiesPos
-
getSections
-
getSection
-
getHeightmaps
-
setHeightmap
-
getOrCreateHeightmapUnprimed
-
hasPrimedHeightmap
-
getHeight
-
getPos
-
getStartForStructure
- Specified by:
getStartForStructurein interfaceStructureAccess
-
setStartForStructure
- Specified by:
setStartForStructurein interfaceStructureAccess
-
getAllStarts
-
setAllStarts
-
getReferencesForStructure
- Specified by:
getReferencesForStructurein interfaceStructureAccess
-
addReferenceForStructure
- Specified by:
addReferenceForStructurein interfaceStructureAccess
-
getAllReferences
- Specified by:
getAllReferencesin interfaceStructureAccess
-
setAllReferences
- Specified by:
setAllReferencesin interfaceStructureAccess
-
isYSpaceEmpty
public boolean isYSpaceEmpty(int pStartY, int pEndY) -
markUnsaved
public void markUnsaved() -
tryMarkSaved
public boolean tryMarkSaved() -
isUnsaved
public boolean isUnsaved() -
getPersistedStatus
-
getHighestGeneratedStatus
-
removeBlockEntity
-
markPosForPostprocessing
-
getPostProcessing
public it.unimi.dsi.fastutil.shorts.ShortList[] getPostProcessing() -
addPackedPostProcess
public void addPackedPostProcess(it.unimi.dsi.fastutil.shorts.ShortList pOffsets, int pIndex) -
setBlockEntityNbt
-
getBlockEntityNbt
-
getBlockEntityNbtForSaving
@Nullable public abstract CompoundTag getBlockEntityNbtForSaving(BlockPos pPos, HolderLookup.Provider pRegistries) -
findBlockLightSources
- Specified by:
findBlockLightSourcesin interfaceLightChunk
-
findBlocks
-
findBlocks
public void findBlocks(Predicate<BlockState> p_285343_, BiPredicate<BlockState, BlockPos> fineFilter, BiConsumer<BlockPos, BlockState> p_285030_) -
getBlockTicks
-
getFluidTicks
-
canBeSerialized
public boolean canBeSerialized() -
getTicksForSerialization
-
getUpgradeData
-
isOldNoiseGeneration
public boolean isOldNoiseGeneration() -
getBlendingData
-
getInhabitedTime
public long getInhabitedTime() -
incrementInhabitedTime
public void incrementInhabitedTime(long pAmount) -
setInhabitedTime
public void setInhabitedTime(long pInhabitedTime) -
getOrCreateOffsetList
public static it.unimi.dsi.fastutil.shorts.ShortList getOrCreateOffsetList(it.unimi.dsi.fastutil.shorts.ShortList[] pPackedPositions, int pIndex) -
isLightCorrect
public boolean isLightCorrect() -
setLightCorrect
public void setLightCorrect(boolean pLightCorrect) -
getMinY
public int getMinY()- Specified by:
getMinYin interfaceLevelHeightAccessor
-
getHeight
public int getHeight()- Specified by:
getHeightin interfaceLevelHeightAccessor
-
getOrCreateNoiseChunk
-
carverBiome
@Deprecated public BiomeGenerationSettings carverBiome(Supplier<BiomeGenerationSettings> pCaverBiomeSettingsSupplier) Deprecated. -
getNoiseBiome
Description copied from interface:BiomeManager.NoiseBiomeSourceGets the biome at the given quart positions. Note that the coordinates passed into this method are 1/4 the scale of block coordinates.- Specified by:
getNoiseBiomein interfaceBiomeManager.NoiseBiomeSource
-
fillBiomesFromNoise
-
hasAnyStructureReferences
public boolean hasAnyStructureReferences() -
getBelowZeroRetrogen
-
isUpgrading
public boolean isUpgrading() -
getHeightAccessorForGeneration
-
initializeLightSources
public void initializeLightSources() -
getSkyLightSources
- Specified by:
getSkyLightSourcesin interfaceLightChunk
-
hasAttachments
public boolean hasAttachments()Description copied from interface:IAttachmentHolderReturnstrueif there is any data attachments,falseotherwise.- Specified by:
hasAttachmentsin interfaceIAttachmentHolder
-
hasData
Description copied from interface:IAttachmentHolderReturnstrueif there is a data attachment of the give type,falseotherwise.- Specified by:
hasDatain interfaceIAttachmentHolder
-
getData
Description copied from interface:IAttachmentHolderReturns the data attachment of the given type.If there is no data attachment of the given type, the default value is stored in this holder and returned.
- Specified by:
getDatain interfaceIAttachmentHolder- Returns:
- the data attachment of the given type
-
getExistingDataOrNull
- Specified by:
getExistingDataOrNullin interfaceIAttachmentHolder- Returns:
- an existing data attachment value of the given type, or null if there is no data attachment of the given type
-
setData
Description copied from interface:IAttachmentHolderSets the data attachment of the given type.- Specified by:
setDatain interfaceIAttachmentHolder- Returns:
- the previous value for that attachment type, if any, or
nullif there was none
-
removeData
Description copied from interface:IAttachmentHolderRemoves the data attachment of the given type.- Specified by:
removeDatain interfaceIAttachmentHolder- Returns:
- the previous value for that attachment type, if any, or
nullif there was none
-
writeAttachmentsToNBT
FOR INTERNAL USE ONLYOnly public for use in
SerializableChunkData. -
readAttachmentsFromNBT
FOR INTERNAL USE ONLYOnly public for use in
SerializableChunkData. -
getAttachmentHolder
-
getLevel
-
problemPath
-
problemPath
-