Add utility functions for readability and refactor make_move

This commit is contained in:
stefiosif
2024-08-28 21:07:22 +03:00
parent 6c8f445fa9
commit 21076da68c
10 changed files with 91 additions and 61 deletions

View File

@@ -6,12 +6,12 @@ pub fn driver(game: &mut Game, nodes: &mut u64, depth: u8) {
return;
}
let color = game.board.state.next_turn();
let color = game.current_player();
let pseudo_moves = game.board.pseudo_moves_all(color);
for mv in pseudo_moves {
let original_board = game.board.clone();
game.board.make_move(&mv, color);
game.board.make_move(&mv);
if game.board.king_under_check(color) {
game.board = original_board;

View File

@@ -5,12 +5,12 @@ pub fn search(game: &mut Game, depth: u8) {
return;
}
let color = game.board.state.next_turn();
let color = game.current_player();
let pseudo_moves = game.board.pseudo_moves_all(color);
for mv in pseudo_moves {
let original_board = game.board.clone();
game.board.make_move(&mv, color);
game.board.make_move(&mv);
if game.board.king_under_check(color) {
game.board = original_board;