Package net.minecraft.server.level
Class ChunkHolder
java.lang.Object
net.minecraft.server.level.ChunkHolder
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface(package private) static final classstatic enumstatic interfacestatic interface -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BitSetprivate static final intprivate final it.unimi.dsi.fastutil.shorts.ShortSet[]private static final List<ChunkStatus>private CompletableFuture<ChunkAccess>private final DebugBuffer<ChunkHolder.ChunkSaveDebug>(package private) LevelChunkprivate CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> private static final ChunkHolder.FullChunkStatus[]private CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> private final AtomicReferenceArray<CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>>> private booleanprivate final LevelHeightAccessorprivate final LevelLightEngineprivate static final com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure> private intprivate final ChunkHolder.LevelChangeListenerprivate CompletableFuture<Void>private final ChunkHolder.PlayerProvider(package private) final ChunkPosprivate intprivate booleanprivate final BitSetprivate intprivate CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> static final com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure> static final CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> static final com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure> private static final CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> private boolean -
Constructor Summary
ConstructorsConstructorDescriptionChunkHolder(ChunkPos p_142986_, int p_142987_, LevelHeightAccessor p_142988_, LevelLightEngine p_142989_, ChunkHolder.LevelChangeListener p_142990_, ChunkHolder.PlayerProvider p_142991_) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddSaveDependency(String p_200417_, CompletableFuture<?> p_200418_) voidblockChanged(BlockPos p_140057_) private voidprivate voidbroadcastBlockEntity(Level p_140030_, BlockPos p_140031_) private voidbroadcastBlockEntityIfNeeded(Level p_140033_, BlockPos p_140034_, BlockState p_140035_) voidbroadcastChanges(LevelChunk p_140055_) private voiddemoteFullChunk(ChunkMap p_142993_, ChunkHolder.FullChunkStatus p_142994_) List<com.mojang.datafixers.util.Pair<ChunkStatus,CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess, ChunkHolder.ChunkLoadingFailure>>>> CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> static ChunkHolder.FullChunkStatusgetFullChunkStatus(int p_140084_) CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> getFutureIfPresent(ChunkStatus p_140081_) CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> getFutureIfPresentUnchecked(ChunkStatus p_140048_) CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> getOrScheduleFuture(ChunkStatus p_140050_, ChunkMap p_140051_) getPos()intstatic ChunkStatusgetStatus(int p_140075_) intCompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> voidvoidreplaceProtoChunk(ImposterProtoChunk p_140053_) private voidscheduleFullChunkPromotion(ChunkMap p_142999_, CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk, ChunkHolder.ChunkLoadingFailure>> p_143000_, Executor p_143001_, ChunkHolder.FullChunkStatus p_143002_) voidsectionLightChanged(LightLayer p_140037_, int p_140038_) private voidsetQueueLevel(int p_140087_) voidsetTicketLevel(int p_140028_) private voidupdateChunkToSave(CompletableFuture<? extends com.mojang.datafixers.util.Either<? extends ChunkAccess, ChunkHolder.ChunkLoadingFailure>> p_143018_, String p_143019_) protected voidupdateFutures(ChunkMap p_143004_, Executor p_143005_) boolean
-
Field Details
-
UNLOADED_CHUNK
public static final com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure> UNLOADED_CHUNK -
UNLOADED_CHUNK_FUTURE
public static final CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> UNLOADED_CHUNK_FUTURE -
UNLOADED_LEVEL_CHUNK
public static final com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure> UNLOADED_LEVEL_CHUNK -
NOT_DONE_YET
private static final com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure> NOT_DONE_YET -
UNLOADED_LEVEL_CHUNK_FUTURE
private static final CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> UNLOADED_LEVEL_CHUNK_FUTURE -
CHUNK_STATUSES
-
FULL_CHUNK_STATUSES
-
BLOCKS_BEFORE_RESEND_FUDGE
private static final int BLOCKS_BEFORE_RESEND_FUDGE- See Also:
-
futures
private final AtomicReferenceArray<CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>>> futures -
levelHeightAccessor
-
fullChunkFuture
private volatile CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> fullChunkFuture -
tickingChunkFuture
private volatile CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> tickingChunkFuture -
entityTickingChunkFuture
private volatile CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> entityTickingChunkFuture -
chunkToSave
-
chunkToSaveHistory
-
oldTicketLevel
private int oldTicketLevel -
ticketLevel
private int ticketLevel -
queueLevel
private int queueLevel -
pos
-
hasChangedSections
private boolean hasChangedSections -
changedBlocksPerSection
private final it.unimi.dsi.fastutil.shorts.ShortSet[] changedBlocksPerSection -
blockChangedLightSectionFilter
-
skyChangedLightSectionFilter
-
lightEngine
-
onLevelChange
-
playerProvider
-
wasAccessibleSinceLastSave
private boolean wasAccessibleSinceLastSave -
resendLight
private boolean resendLight -
currentlyLoading
LevelChunk currentlyLoading -
pendingFullStateConfirmation
-
-
Constructor Details
-
ChunkHolder
public ChunkHolder(ChunkPos p_142986_, int p_142987_, LevelHeightAccessor p_142988_, LevelLightEngine p_142989_, ChunkHolder.LevelChangeListener p_142990_, ChunkHolder.PlayerProvider p_142991_)
-
-
Method Details
-
getFutureIfPresentUnchecked
public CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> getFutureIfPresentUnchecked(ChunkStatus p_140048_) -
getFutureIfPresent
public CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> getFutureIfPresent(ChunkStatus p_140081_) -
getTickingChunkFuture
public CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> getTickingChunkFuture() -
getEntityTickingChunkFuture
public CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> getEntityTickingChunkFuture() -
getFullChunkFuture
public CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk,ChunkHolder.ChunkLoadingFailure>> getFullChunkFuture() -
getTickingChunk
-
getFullChunk
-
getLastAvailableStatus
-
getLastAvailable
-
getChunkToSave
-
blockChanged
-
sectionLightChanged
-
broadcastChanges
-
broadcastBlockEntityIfNeeded
private void broadcastBlockEntityIfNeeded(Level p_140033_, BlockPos p_140034_, BlockState p_140035_) -
broadcastBlockEntity
-
broadcast
-
getOrScheduleFuture
public CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess,ChunkHolder.ChunkLoadingFailure>> getOrScheduleFuture(ChunkStatus p_140050_, ChunkMap p_140051_) -
addSaveDependency
-
updateChunkToSave
private void updateChunkToSave(CompletableFuture<? extends com.mojang.datafixers.util.Either<? extends ChunkAccess, ChunkHolder.ChunkLoadingFailure>> p_143018_, String p_143019_) -
getFullStatus
-
getPos
-
getTicketLevel
public int getTicketLevel() -
getQueueLevel
public int getQueueLevel() -
setQueueLevel
private void setQueueLevel(int p_140087_) -
setTicketLevel
public void setTicketLevel(int p_140028_) -
scheduleFullChunkPromotion
private void scheduleFullChunkPromotion(ChunkMap p_142999_, CompletableFuture<com.mojang.datafixers.util.Either<LevelChunk, ChunkHolder.ChunkLoadingFailure>> p_143000_, Executor p_143001_, ChunkHolder.FullChunkStatus p_143002_) -
demoteFullChunk
-
updateFutures
-
getStatus
-
getFullChunkStatus
-
wasAccessibleSinceLastSave
public boolean wasAccessibleSinceLastSave() -
refreshAccessibility
public void refreshAccessibility() -
replaceProtoChunk
-
getAllFutures
public List<com.mojang.datafixers.util.Pair<ChunkStatus,CompletableFuture<com.mojang.datafixers.util.Either<ChunkAccess, getAllFutures()ChunkHolder.ChunkLoadingFailure>>>>
-