diff --git a/c2me-opts-chunk-access/src/main/java/com/ishland/c2me/opts/chunk_access/mixin/region_capture/MixinChunkStatus.java b/c2me-opts-chunk-access/src/main/java/com/ishland/c2me/opts/chunk_access/mixin/region_capture/MixinChunkStatus.java index e83e51e00..29c68dcb3 100644 --- a/c2me-opts-chunk-access/src/main/java/com/ishland/c2me/opts/chunk_access/mixin/region_capture/MixinChunkStatus.java +++ b/c2me-opts-chunk-access/src/main/java/com/ishland/c2me/opts/chunk_access/mixin/region_capture/MixinChunkStatus.java @@ -44,14 +44,16 @@ public CompletableFuture> runGenerationTask( List chunks) { try { final ChunkStatus thiz = (ChunkStatus) (Object) this; - CurrentWorldGenState.setCurrentRegion(new ChunkRegion(world,chunks, thiz, -1)); + CurrentWorldGenState.setCurrentRegion(new ChunkRegion(world, chunks, thiz, -1)); Chunk chunk = chunks.get(chunks.size() / 2); Finishable finishable = FlightProfiler.INSTANCE.startChunkGenerationProfiling(chunk.getPos(), world.getRegistryKey(), this.toString()); CompletableFuture> completableFuture = this.generationTask.doWork(thiz, executor, world, generator, structureTemplateManager, lightingProvider, fullChunkConverter, chunks, chunk); return completableFuture.thenApply((either) -> { - if (chunk instanceof ProtoChunk protoChunk && !protoChunk.getStatus().isAtLeast(thiz)) { - protoChunk.setStatus(thiz); - } + either.ifLeft(chunk1 -> { + if (chunk1 instanceof ProtoChunk protoChunk && !protoChunk.getStatus().isAtLeast(thiz)) { + protoChunk.setStatus(thiz); + } + }); if (finishable != null) { finishable.finish();