public static bool SquareIsThreatened(Piece pPiece, BoardPosition bp, ChessBoardView pChessBoard) { Piece.Colors pieceColor = pPiece.color; List <BoardPosition> moveList; for (int i = 0; i < 8; i++) { for (int j = 0; j < 8; j++) { if (pChessBoard.GetChessBoard().GetBoard()[i, j].HasPiece()) { if (!(pPiece.IsSameColor(pChessBoard.GetChessBoard().GetBoard()[i, j].GetPiece()))) { if (pChessBoard.GetChessBoard().GetBoard()[i, j].GetPiece().pieceType.type == PieceType.Types.QUEEN) { moveList = AvaiableMoves(new BoardPosition(i, j), pChessBoard); Console.WriteLine("Position: " + i + "," + j); foreach (BoardPosition b in moveList) { Console.Write(b.ToString() + " "); if (b.IsSamePosition(bp)) { return(true); } } } } } } } return(false); }
public static Piece.Colors OtherColor(Piece.Colors pColor) { if (pColor.Equals(Piece.Colors.WHITE)) { return(Piece.Colors.BLACK); } else { return(Piece.Colors.WHITE); } }
public void ChangePlayerColor() { if (playerColor == Piece.Colors.WHITE) { playerColor = Piece.Colors.BLACK; } else { playerColor = Piece.Colors.WHITE; } }
public Piece(PieceType.Types pType, Piece.Colors pColor) { pieceType = new PieceType(pType); color = pColor; hasMoved = false; }
public void SetPlayerColor(Piece.Colors pColor) { playerColor = pColor; }