Dwarrowdelf.TerrainGen.TerrainData.SetTileDataNoHeight C# (CSharp) Method

SetTileDataNoHeight() public method

public SetTileDataNoHeight ( IntVector3 p, TileData data ) : void
p IntVector3
data TileData
return void
        public void SetTileDataNoHeight(IntVector3 p, TileData data)
        {
            data.Flags |= TileFlags.Error; // ZZZ
            m_tileGrid[p.Z, p.Y, p.X] = data;
        }

Usage Example

Example #1
0
        public static TerrainData CreateBallMap(IntSize3 size, int innerSide = 0)
        {
            var map = new TerrainData(size);

            int side = MyMath.Min(size.Width, size.Height, size.Depth);

            int r  = side / 2 - 1;
            int ir = innerSide / 2 - 1;

            Parallel.For(0, size.Depth, z =>
            {
                for (int y = 0; y < size.Height; ++y)
                {
                    for (int x = 0; x < size.Width; ++x)
                    {
                        var pr = Math.Sqrt((x - r) * (x - r) + (y - r) * (y - r) + (z - r) * (z - r));

                        var p = new IntVector3(x, y, z);

                        if (pr < r && pr >= ir)
                        {
                            map.SetTileDataNoHeight(p, TileData.GetNaturalWall(MaterialID.Granite));
                        }
                        else
                        {
                            map.SetTileDataNoHeight(p, TileData.EmptyTileData);
                        }
                    }
                }
            });

            map.RescanLevelMap();

            return(map);
        }
All Usage Examples Of Dwarrowdelf.TerrainGen.TerrainData::SetTileDataNoHeight