public static GameMap Generate() { var nameGen = new NameGenerator(); GameMap gameRes = new GameMap(); int n = 50; var points = new List<Vector2>(); var colors = new List<uint>(); var lines = new List<Tuple<Vector2, Vector2>>(); for (int i = 0; i < n; i++) { points.Add(new Vector2(UnityEngine.Random.Range(-10.0F, 10.0F), UnityEngine.Random.Range(-10.0F, 10.0F))); colors.Add(0); } Delaunay.Voronoi v = new Delaunay.Voronoi(points, colors, new Rect(-10.0F, -10.0F, 20.0F, 20.0F)); var regions = v.SiteCoords(); foreach (var pts in v.Regions()) { var prov = new Province(); prov.Border = pts.Reverse<Vector2>().ToList(); prov.Name = nameGen.getName(); gameRes.AddProvince(prov); } return gameRes; }
public void AddProvince(Province province) { provinces.Add(province); }