예제 #1
0
 public void TryMovePieceTest_88()
 {
     Board board = new Board();
     Piece piece = PieceBuilder.MakeKing(new Point(1, 1), Side.Light);
     board.AddPiece(piece, new Point(1, 1));
     piece.UpdateValidMoveList(board);
     Point target = new Point(8, 8); //Move the king outside the board
     bool expected = false;
     bool actual;
     actual = board.TryMovePiece(piece, target);
     Assert.AreEqual(expected, actual);
 }
예제 #2
0
 public void GetPieceTest_notNull()
 {
     Board target = new Board();
     Piece piece = PieceBuilder.MakePawn(new Point(1, 1), Side.Light);
     target.AddPiece(piece, new Point(1, 1));   // Adds a piece at (1,1) all other tiles will be null
     Point position = new Point(1, 1);   // Look for piece at (1,1)
     Piece expected = piece;
     Piece actual;
     actual = target.GetPiece(position);
     Assert.AreEqual(expected, actual);
 }
예제 #3
0
        /// <summary>
        /// Puts a standard set of pieces on the board
        /// </summary>
        /// <param name="board">Game board</param>
        public static void InitPieces(Board board)
        {
            List<Tile> tiles = new List<Tile>();

            for (int i = 0; i < board.Width; i++)
            {
                board.AddPiece(MakePawn(new Point(i, 1), Side.Dark), new Point(i, 1));
            }
            for (int i = 0; i < board.Width; i++)
            {
                board.AddPiece(MakePawn(new Point(i, 6), Side.Light), new Point(i, 6));
            }

            //Kings
            board.AddPiece(MakeKing(new Point(4, 0), Side.Dark), new Point(4, 0));
            board.AddPiece(MakeKing(new Point(4, 7), Side.Light), new Point(4, 7));

            //Queens
            board.AddPiece(MakeQueen(new Point(3, 0), Side.Dark), new Point(3, 0));
            board.AddPiece(MakeQueen(new Point(3, 7), Side.Light), new Point(3, 7));

            //Bishops
            board.AddPiece(MakeBishop(new Point(2, 0), Side.Dark), new Point(2, 0));
            board.AddPiece(MakeBishop(new Point(5, 0), Side.Dark), new Point(5, 0));

            board.AddPiece(MakeBishop(new Point(2, 7), Side.Light), new Point(2, 7));
            board.AddPiece(MakeBishop(new Point(5, 7), Side.Light), new Point(5, 7));

            //Knights
            board.AddPiece(MakeKnight(new Point(1, 0), Side.Dark), new Point(1, 0));
            board.AddPiece(MakeKnight(new Point(6, 0), Side.Dark), new Point(6, 0));

            board.AddPiece(MakeKnight(new Point(1, 7), Side.Light), new Point(1, 7));
            board.AddPiece(MakeKnight(new Point(6, 7), Side.Light), new Point(6, 7));

            //Rook
            board.AddPiece(MakeRook(new Point(0, 0), Side.Dark), new Point(0, 0));
            board.AddPiece(MakeRook(new Point(7, 0), Side.Dark), new Point(7, 0));

            board.AddPiece(MakeRook(new Point(0, 7), Side.Light), new Point(0, 7));
            board.AddPiece(MakeRook(new Point(7, 7), Side.Light), new Point(7, 7));

            board.UpdatePieces();
        }