public void FinallyMoveTest(int x1, int y1, int x2, int y2, bool expected)
        {
            // Arrange
            var board      = new Board(true);
            var boardLogic = new BoardLogic(true);

            boardLogic.FinallyMove(4, 1, 4, 3, board, boardLogic);


            // Act
            //board.TurnChange();
            var result = boardLogic.FinallyMove(x1, y1, x2, y2, board, boardLogic);

            // Assert
            Assert.AreEqual(expected, result);
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            //bool turn = true; // true si mueven blancas
            bool                   player1    = true; //true para blancas abajo y negras arriba
            BoardLogic             boardLogic = new BoardLogic(player1);
            Board                  board      = new Board(player1);
            ArtificialIntelligence artificInt = new ArtificialIntelligence(board);

            Move[,] MovesArray = new Move[2, 2];

            boardLogic.FinallyMove(4, 1, 4, 3, board, boardLogic); //blancas

            double[] response = artificInt.Minimize(board, boardLogic, 0);
            boardLogic.FinallyMove((int)response[0], (int)response[1], (int)response[2], (int)response[3], board, boardLogic);


            //Move move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            //boardLogic.FinallyMove(3, 0, 6, 3, board, boardLogic); //blancas

            //move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            //boardLogic.FinallyMove(6, 3, 5, 2, board, boardLogic); //blancas

            //move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            //boardLogic.FinallyMove(5, 0, 2, 3, board, boardLogic); //blancas enroque

            //move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            //boardLogic.FinallyMove(1, 0, 2, 2, board, boardLogic); //blancas

            //move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            //boardLogic.FinallyMove(2, 1, 2, 3, board, boardLogic); //blancas

            //move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            ////boardLogic.FinallyMove(5, 2, 4, 4, board, boardLogic); //blancas

            //move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            //boardLogic.FinallyMove(2, 3, 3, 4, board, boardLogic); //blancas

            //boardLogic.FinallyMove(4, 7, 6, 7, board, boardLogic); //negras enroque


            //boardLogic.FinallyMove(4, 4, 5, 6, board, boardLogic); //blancas

            //move1 = artificInt.BestComputerMoveDepth4(board, boardLogic);
            //boardLogic.FinallyMove(move1.x1, move1.y1, move1.x2, move1.y2, board, boardLogic);

            //boardLogic.FinallyMove(4, 4, 5, 6, board, boardLogic); //blancas



            //Stopwatch stopwatch = new Stopwatch();
            //stopwatch.Start();
            //artificInt.BestResponse(board);
            //stopwatch.Stop();
            //Console.WriteLine("Elapsed Time is {0} ms", stopwatch.ElapsedMilliseconds);
        }