Move() 공개 메소드

public Move ( Square board, Move move ) : void
board Square
move Move
리턴 void
예제 #1
0
        private void PerformMove(Move move, ChessPiece defender, ChessPiece piece)
        {
            if (FitsEnPassantCriteria(move, defender, piece))
            {
                PerformEnPassant(move);
            }

            if (FitsCastleCriteria(move, piece))
            {
                MoveRookForCastle(move);
            }

            if (defender != null)
            {
                if (piece.Team == Team.Dark)
                    Game.DarkScore += defender.ScoreValue;
                if (piece.Team == Team.Light)
                    Game.LightScore += defender.ScoreValue;
            }

            piece.Move(_board.Squares, move);

            IncrementMoveData(move);
        }