/// <inheritdoc cref="IEditBatch"/> public IEnumerable <BlockPlacement> GetBlocks() { for (int x = m_Start.X; x <= m_End.X; x++) { for (int y = m_Start.Y; y <= m_End.Y; y++) { for (int z = m_Start.Z; z <= m_End.Z; z++) { var pos = new BlockPosition(x, y, z); yield return(new BlockPlacement { Position = pos, BlockID = m_FillPattern.GetBlockID(pos), }); } } } }
/// <inheritdoc cref="IChunkProperties"/> public BlockType GetNextBlock(BlockPosition pos, int side) => m_Ungenerated;
/// <inheritdoc cref="IRegionalEdit"/> public void Set(BlockPosition point1, BlockPosition point2, IFillPattern fillPattern) { m_FillPattern = fillPattern; m_Start = MinPos(point1, point2); m_End = MaxPos(point1, point2); }
/// <inheritdoc cref="IChunkProperties"/> public BlockType GetBlock(BlockPosition pos) => m_BlockType;