public static ReadyChunkInfo createForNewChunk(Chunk chunk, TShortObjectMap<TIntList> blockPositionMapppings, List<EntityStore> entities) { return new ReadyChunkInfo(chunk, blockPositionMapppings, entities); }
public static ReadyChunkInfo createForRestoredChunk(Chunk chunk, TShortObjectMap<TIntList> blockPositionMapppings, ChunkStore chunkStore, List<EntityStore> entities) { return new ReadyChunkInfo(chunk, blockPositionMapppings, chunkStore, entities); }
@Override public void onChunkIsReady(Chunk chunk) { readyChunks.offer(new ReadyChunkInfo(chunk, createBatchBlockEventMappings(chunk), Collections.emptyList())); }
private void createOrLoadChunk(Vector3i chunkPos) { Chunk chunk = chunkCache.get(chunkPos); if (chunk == null && !preparingChunks.contains(chunkPos)) { preparingChunks.add(chunkPos); pipeline.doTask(new AbstractChunkTask(chunkPos) { @Override public String getName() { return "Create or Load Chunk"; } @Override public void run() { ChunkStore chunkStore = storageManager.loadChunkStore(getPosition()); Chunk chunk; EntityBufferImpl buffer = new EntityBufferImpl(); if (chunkStore == null) { chunk = new ChunkImpl(getPosition(), blockManager, biomeManager, extraDataManager); generator.createChunk(chunk, buffer); } else { chunk = chunkStore.getChunk(); } InternalLightProcessor.generateInternalLighting(chunk); chunk.deflate(); TShortObjectMap<TIntList> mappings = createBatchBlockEventMappings(chunk); readyChunks.offer(new ReadyChunkInfo(chunk, mappings, chunkStore, buffer.getAll())); } }); } }
@Override public void run() { ChunkStore chunkStore = storageManager.loadChunkStore(getPosition()); Chunk chunk; EntityBufferImpl buffer = new EntityBufferImpl(); if (chunkStore == null) { chunk = new ChunkImpl(getPosition(), blockManager, biomeManager, extraDataManager); generator.createChunk(chunk, buffer); } else { chunk = chunkStore.getChunk(); } InternalLightProcessor.generateInternalLighting(chunk); chunk.deflate(); TShortObjectMap<TIntList> mappings = createBatchBlockEventMappings(chunk); readyChunks.offer(new ReadyChunkInfo(chunk, mappings, chunkStore, buffer.getAll())); } });