static int[] MainMenu() { int mode = int.MaxValue; while (mode > 2) { if (mode == 3) { if (!File.Exists("Highscores")) { mode = ConsoleWrite.Menu("Snake", new[] { "Start Playing", "Tron (2P)", "Looping mode", "No Highscores" }); continue; } string[] scores; using (var reader = new StreamReader("Highscores")) { var lines = new List <string>(reader.ReadToEnd().Split(new [] { "\r\r\n", "\r\n", "\n" }, StringSplitOptions.None)); lines.Remove(""); scores = lines.ToArray(); } } mode = ConsoleWrite.Menu("Snake", new[] { "Start Playing", "Tron (2P)", "Looping mode", "View Highscores" }); } int x = (ConsoleWrite.Menu("Board X", Enumerable.Range(2, (Console.LargestWindowWidth - 2) / 10 - 1).Select(i => (i * 10).ToString()).ToArray()) + 2) * 10; int y = (ConsoleWrite.Menu("Board Y", Enumerable.Range(2, (Console.LargestWindowHeight - 5) / 10 - 1).Select(i => (i * 10).ToString()).ToArray()) + 2) * 10; int speed = (ConsoleWrite.Menu("Snake Speed", new[] { "10", "20", "30", "40", "50", "60", "70", "80", "90", "100" }) + 1) * 10; return(new[] { x, y, speed, mode }); }