public AdminController(AdminUseCases adminUseCases, TransactionBuilder transactionBuilder, UserBuilder userBuilder, ProvinceBuilder provinceBuilder) { _adminUseCases = adminUseCases; _transactionBuilder = transactionBuilder; _userBuilder = userBuilder; _provinceBuilder = provinceBuilder; }
public static IList<RawProvince> Provinces(string text) { IList<RawProvince> provinces = new List<RawProvince>(); ProvinceBuilder provBuilder = new ProvinceBuilder(); PolygonBuilder polyBuilder = new PolygonBuilder(); foreach (string line in Lines(text)) { Vector2[] vectors; switch (line[0]) { case '§': // New province if (provBuilder.Tag != "") { provBuilder.Polys.Add(polyBuilder.Build()); provinces.Add(provBuilder.Build()); } string[] tokens = line.Split(' '); provBuilder.Tag = tokens[0].Substring(1); if (!TryParseHexColor(tokens[1], out provBuilder.Color)) { Console.Error.WriteLine("Failed to parse color: " + tokens[1]); } break; case '\\': // New hole to existing polygon vectors = ParseVectors(line.Substring(1)); polyBuilder.Holes.Add(new Poly(vectors)); break; default: // New polygon vectors = ParseVectors(line); if (polyBuilder.Outline != null) { provBuilder.Polys.Add(polyBuilder.Build()); } polyBuilder.Outline = new Poly(vectors); break; } } provBuilder.Polys.Add(polyBuilder.Build()); provinces.Add(provBuilder.Build()); return provinces; }