Exemple #1
0
 /// <summary>
 /// One round which is one player's guess.
 /// </summary>
 /// <param name="guess">Number that user wrote.</param>
 /// <param name="answer">Computer's answer to the <see cref="Number"/>.</param>
 /// <param name="status">Contains information about this game status.</param>
 public Round(int?guess, Answer?answer, GameStatus status)
 {
     Number = guess;
     Answer = answer;
     Status = status;
     Time   = DateTime.Now;
 }
        private Answer AskYesNoCancelQuestion(string txt, Answer?dft = null)
        {
            var cr = new ConsoleReader();

            cr.Prefix = $"{txt} (y)es / (n)o / (c)ancel: ";
            while (true)
            {
                string dftinput = "";
                if (dft.HasValue)
                {
                    dftinput = dft.Value == Answer.Yes ? "y" : (dft.Value == Answer.No ? "n" : "c");
                }
                var input = cr.Read(dftinput).ToLowerInvariant();
                if (input == "y" || input == "yes")
                {
                    return(Answer.Yes);
                }
                if (input == "n" || input == "no")
                {
                    return(Answer.No);
                }
                if (input == "c" || input == "cancel")
                {
                    return(Answer.Cancel);
                }
            }
        }
 public void GiveAnswer(Answer answer)
 {
     GivenAnswer = answer;
     TryClose();
 }
Exemple #4
0
        public QuestionResult CancelOn(Answer answer)
        {
            _cancelAnswer = answer;

            return this;
        }