private static Terrain.TerrainType[,] GenerateArray(int width, int height)
{
var types = new Terrain.TerrainType[height, width];
for (var x = 0; x < width; ++x)
for (var y = height - 20; y < height - 10; ++y)
types[y, x] = Terrain.TerrainType.Water;
for (var x = 0; x < width; ++x)
for (var y = 0; y < height - 10; ++y)
if (weightedNoise(2f, height,x,y) > 0)
types[y, x] = Terrain.TerrainType.Earth;
else if (weightedNoise(2f, height, x, y) > -0.1)
types[y, x] = Terrain.TerrainType.Sand;
else if (weightedNoise(2f, height, x, y) > -0.2)
types[y, x] = Terrain.TerrainType.Water;
for (var x = 0; x < width; ++x)
for (var y = height - 10; y < height; ++y)
types[y,x] = Terrain.TerrainType.Stone;
for (var i = 0; i < 4; ++i)
while (true)
{
var x = Rng.Next(width);
var y = Rng.Next(height);
if (types[y, x] != Terrain.TerrainType.Air)
continue;
types[y, x] = Terrain.TerrainType.VegetationSeed;
break;
}
return types;
}