private T AskWithSimpleSelectors() { Console.WriteLine(""); foreach (string selector in options.Keys) { ConsoleGame.WriteCenteredLines($"{selector}) {options[selector].Item1}", null); } int invalidChoices = 0; Console.Write("> "); string secret = "hidden"; int secretProgress = 0; while (true) { string chosenKey = Console.ReadKey().KeyChar.ToString(); if (chosenKey[0].Equals(secret[secretProgress])) { ClearCurrentConsoleLine(); if (invalidChoices > 0) { Console.Write($"You have made {++invalidChoices} invalid choices. Try again> "); } else { Console.Write("> "); } secretProgress++; if (secretProgress == secret.Length) { secretProgress = 0; ConsoleApplicationPrompt.Run(); } } else if (options.ContainsKey(chosenKey)) { Tuple <string, T> choice = options[chosenKey]; Console.WriteLine(); return(choice.Item2); } else { secretProgress = 0; ClearCurrentConsoleLine(); Console.Write($"You have made {++invalidChoices} invalid choices. Try again> "); continue; } } }
public void RunDeveloperMode() { ConsoleApplicationPrompt.Run(); }