most basic best move search
This commit is contained in:
parent
af2178abad
commit
9d527634eb
7 changed files with 105 additions and 4 deletions
18
src/eval/basic.rs
Normal file
18
src/eval/basic.rs
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
use crate::board::{Board, Color, PieceType};
|
||||
|
||||
pub fn evaluate_board(board: &Board) -> i32 {
|
||||
let mut score = 0_i32;
|
||||
score += board.pieces[PieceType::Pawn as usize][Color::White as usize].count_ones() as i32 * 100;
|
||||
score += board.pieces[PieceType::Knight as usize][Color::White as usize].count_ones() as i32 * 300;
|
||||
score += board.pieces[PieceType::Bishop as usize][Color::White as usize].count_ones() as i32 * 300;
|
||||
score += board.pieces[PieceType::Rook as usize][Color::White as usize].count_ones() as i32 * 500;
|
||||
score += board.pieces[PieceType::Queen as usize][Color::White as usize].count_ones() as i32 * 900;
|
||||
score += board.pieces[PieceType::King as usize][Color::White as usize].count_ones() as i32 * 10000;
|
||||
score -= board.pieces[PieceType::Pawn as usize][Color::Black as usize].count_ones() as i32 * 100;
|
||||
score -= board.pieces[PieceType::Knight as usize][Color::Black as usize].count_ones() as i32 * 300;
|
||||
score -= board.pieces[PieceType::Bishop as usize][Color::Black as usize].count_ones() as i32 * 300;
|
||||
score -= board.pieces[PieceType::Rook as usize][Color::Black as usize].count_ones() as i32 * 500;
|
||||
score -= board.pieces[PieceType::Queen as usize][Color::Black as usize].count_ones() as i32 * 900;
|
||||
score -= board.pieces[PieceType::King as usize][Color::Black as usize].count_ones() as i32 * 10000;
|
||||
score
|
||||
}
|
||||
1
src/eval/mod.rs
Normal file
1
src/eval/mod.rs
Normal file
|
|
@ -0,0 +1 @@
|
|||
pub mod basic;
|
||||
Loading…
Add table
Add a link
Reference in a new issue