示例#1
0
 private void AddCharGuess(CharGuess guess)
 {
     AllGuesses.Add(guess);
     if (guess.IsGoodGuess)
     {
         GoodGuesses.Add(guess);
         CreateEncodeWord();
         if (EvaluateWord(EncodedWord))
         {
             FinishGame(true);
         }
     }
     else
     {
         BadGuesses.Add(guess);
         EndGameIfLost();
     }
     UpdateReadOnlyProperties();
 }
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            JObject jo             = JObject.Load(reader);
            bool?   isLetterGuess  = (bool?)jo["IsLetter"];
            bool?   isLetterGuess2 = (bool?)jo["isLetter"];

            Guess item;

            if (isLetterGuess.GetValueOrDefault() || isLetterGuess2.GetValueOrDefault())
            {
                item = new CharGuess();
            }
            else
            {
                item = new WordGuess();
            }

            serializer.Populate(jo.CreateReader(), item);

            return(item);
        }