#include "search.h" void get_queen_moves(moves_t* moves, position_t position) { assert_valid_position(position); bitboard_t friendly_queens; bitboard_t friendly_pieces; bitboard_t enemy_pieces; if (position.turn == WHITE_TURN) { friendly_pieces = whites(position); enemy_pieces = blacks(position); friendly_queens = position.bitboards[WHITE_QUEEN]; } else { friendly_pieces = blacks(position); enemy_pieces = whites(position); friendly_queens = position.bitboards[BLACK_QUEEN]; } __forloop_rook_moves_gen( moves, friendly_queens, friendly_pieces, enemy_pieces ); __forloop_bishop_moves_gen( moves, friendly_queens, friendly_pieces, enemy_pieces ); }