public ChunkColumnManager( IChunkColumnProvider chunkColumnProvider, DirectBlockPalette globalBlockPalette) { ChunkColumnProvider = chunkColumnProvider ?? throw new ArgumentNullException(nameof(chunkColumnProvider)); GlobalBlockPalette = globalBlockPalette ?? throw new ArgumentNullException(nameof(globalBlockPalette)); Air = GlobalBlockPalette["minecraft:air"].DefaultState; ChunkProvider = ChunkColumnProvider.CreateChunkProvider(); //for (int y = 0; y < 16; y++) //{ // _chunks[y] = new Chunk(this, y, airBlock, blockPalette); //} }
public bool TryGetChunkColumn(ChunkColumnPosition columnPosition, [MaybeNullWhen(false)] out IChunkColumn chunkColumn) { return(ChunkColumnProvider.TryGetChunkColumn(columnPosition, out chunkColumn)); }
public ValueTask <IChunkColumn> GetOrAddChunkColumn(ChunkColumnPosition columnPosition) { return(ChunkColumnProvider.GetOrAddChunkColumn(this, columnPosition)); }