X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=board.c;h=5c8231a5d9b43c1e6e24ce84e192ddda41379b68;hb=learn;hp=4f1139f296174dbb5826b8de6eaf9139007ba461;hpb=ae338a820ef1c16d4399958613bbc0b908904b91;p=polyglot.git diff --git a/board.c b/board.c index 4f1139f..5c8231a 100644 --- a/board.c +++ b/board.c @@ -270,6 +270,24 @@ bool board_equal(const board_t * board_1, const board_t * board_2) { return TRUE; } +// board_has_queen() + +bool board_has_queen(const board_t * board, int colour) { + + int sq_64, sq, piece; + + ASSERT(board!=NULL); + + for (sq_64 = 0; sq_64 < 64; sq_64++) { + sq = square_from_64(sq_64); + piece = board->square[sq]; + if (colour_equal(piece,colour) && piece_is_queen(piece)) { + return TRUE; + } + } + return FALSE; +} + // board_init_list() void board_init_list(board_t * board) {