示例#1
0
 public GameResults(string results)
 {
     if (results == "1-0")
     {
         Results = GameResultsType.WhiteWins;
     }
     else if (results == "0-1")
     {
         Results = GameResultsType.BlackWins;
     }
     else if (results == "1/2-1/2" || results == "1/2")
     {
         Results = GameResultsType.Tie;
     }
     else if (results == "*")
     {
         Results = GameResultsType.Unresolved;
     }
     else
     {
         throw new Exception("Illegal game result: " + results);
     }
 }
示例#2
0
        public static string EncodeGame(List<Move> moves, GameResultsType? result = null)
        {
            var sb = new StringBuilder();
            foreach (var move in moves)
                sb.Append(EncodeMove(move.From, move.To, move.Promotion));

            if (result != null)
            {
                sb.Append('-');
                sb.Append(((int)result).ToString());
            }

            return sb.ToString();
        }