/// <summary> /// Main game loop. Processes user input for the menu system and then executes the required function(s) as specified. /// </summary> public void Play() { do { DisplayInGameMenu(); char userInput = InputHelpers.GetUserChoice(); switch (userInput) { case 'N': case 'n': NextTurn(); break; case 'V': case 'v': DisplayScore(); break; case 'C': case 'c': Console.Clear(); break; case 'F': case 'f': RunInBatchMode(); break; case 'H': case 'h': DisplayGameInstructions(); break; case 'Q': case 'q': ForceGameOver(); break; default: Console.WriteLine("Invalid input, please enter \"n\", \"v\", \"f\", \"c\", \"h\", or \"q\"."); break; } } while (!GameOver()); DisplayGameResults(); Console.WriteLine("Press enter to exit the program."); InputHelpers.ForceUserToPressEnterKey(); }