Cleanup InstanceContainer#copy

This commit is contained in:
themode 2020-11-08 17:39:03 +01:00
parent 682c660857
commit 11fc1e39bc

View File

@ -491,7 +491,7 @@ public class InstanceContainer extends Instance {
} }
@Override @Override
public void saveChunksToStorage(Runnable callback) { public void saveChunksToStorage(@Nullable Runnable callback) {
this.chunkLoader.saveChunks(chunks.values(), callback); this.chunkLoader.saveChunks(chunks.values(), callback);
} }
@ -630,15 +630,14 @@ public class InstanceContainer extends Instance {
copiedInstance.srcInstance = this; copiedInstance.srcInstance = this;
copiedInstance.lastBlockChangeTime = lastBlockChangeTime; copiedInstance.lastBlockChangeTime = lastBlockChangeTime;
ConcurrentHashMap<Long, Chunk> copiedChunks = copiedInstance.chunks; for (Chunk chunk : chunks.values()) {
for (Map.Entry<Long, Chunk> entry : chunks.entrySet()) { final int chunkX = chunk.getChunkX();
final long index = entry.getKey(); final int chunkZ = chunk.getChunkZ();
final Chunk chunk = entry.getValue();
final Chunk copiedChunk = chunk.copy(chunk.getChunkX(), chunk.getChunkZ()); final Chunk copiedChunk = chunk.copy(chunkX, chunkZ);
copiedChunks.put(index, copiedChunk); copiedInstance.cacheChunk(copiedChunk);
UPDATE_MANAGER.signalChunkLoad(copiedInstance, chunk.getChunkX(), chunk.getChunkZ()); UPDATE_MANAGER.signalChunkLoad(copiedInstance, chunkX, chunkZ);
} }
return copiedInstance; return copiedInstance;