public static void ConsoleMain(string[] args) { IntPtr foregroundWindow = GetForegroundWindow(); int processId; GetWindowThreadProcessId(foregroundWindow, out processId); if (!AttachConsole(processId)) { AllocConsole(); } try { MapGeneratorOptions options = MapGeneratorOptions.ParseOptions(args); MapGenerator generator = new MapGenerator(options); ConsoleMapGeneratorProgressHandler handler = new ConsoleMapGeneratorProgressHandler(); generator.Generate(handler); } catch (ArgumentException e) { System.Console.WriteLine("Failed to parse arguments:\n\n" + e.Message); } catch (Exception e) { System.Console.WriteLine("Unhandled exception:\n\n" + e); } finally { FreeConsole(); } }
public void GenerateWorker() { MapGenerator generator = new MapGenerator(options); generator.Generate(progressHandler); FinishGeneration(); }