コード例 #1
0
ファイル: Game.cs プロジェクト: prezz/Firoz-Chess
        /// <summary>
        /// Makes a move.
        /// </summary>
        /// <param name="move">The move to perform.</param>
        public bool MakeMove(Move move)
        {
            if (move.Execute(m_board))
              {
            switch (m_board.State.ColorToPlay)
            {
              case PieceColor.White:
            m_clock.EndBlackTurn();
            break;

              case PieceColor.Black:
            m_clock.EndWhiteTurn();
            break;
            }

            m_undoMoveHistory.Push(move);
            m_redoMoveHistory.Clear();
            HandleGameHasChanged();

            switch (m_board.State.ColorToPlay)
            {
              case PieceColor.White:
            m_clock.BeginWhiteTurn();
            break;

              case PieceColor.Black:
            m_clock.BeginBlackTurn();
            break;
            }

            return true;
              }

              return false;
        }