public Dimension(DirectBlockPalette directBlockPalette) { _directBlockPalette = directBlockPalette ?? throw new ArgumentNullException(nameof(directBlockPalette)); _chunks = new LongDictionary <ChunkPosition, Chunk>(); _chunkInfos = new Dictionary <Chunk, ChunkInfo>(); var air = _directBlockPalette.blockLookup["minecraft:air"].DefaultState; _templateChunk = new Chunk(this, new ChunkPosition(), air, directBlockPalette); var section0 = _templateChunk.Sections.Span[0]; int y = 0; section0.FillLevelBlock(_directBlockPalette.blockLookup["minecraft:bedrock"].DefaultState, y++); for (int j = 0; j < 3; j++) { section0.FillLevelBlock(_directBlockPalette.blockLookup["minecraft:dirt"].DefaultState, y++); } section0.FillLevelBlock(_directBlockPalette.blockLookup["minecraft:grass_block"].DefaultState, y++); }
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 DirectBlockPaletteWrapper(DirectBlockPalette palette) { Palette = palette ?? throw new ArgumentNullException(nameof(palette)); }