diff options
author | eug-vs <eugene@eug-vs.xyz> | 2023-01-25 05:57:35 +0300 |
---|---|---|
committer | eug-vs <eugene@eug-vs.xyz> | 2023-01-25 06:50:00 +0300 |
commit | 87e7b1341647bf24c21771c9fa5be5ff10e97e73 (patch) | |
tree | 4282d2e8989e29daefd8c193b3da18718a13c535 /src/board/mod.rs | |
parent | 3522398f7a456b400dc48de4c202a013490cd4fc (diff) | |
download | chessnost-87e7b1341647bf24c21771c9fa5be5ff10e97e73.tar.gz |
refactor: impl static_eval for PieceType
Diffstat (limited to 'src/board/mod.rs')
-rw-r--r-- | src/board/mod.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/board/mod.rs b/src/board/mod.rs index 2ff7f9c..61327eb 100644 --- a/src/board/mod.rs +++ b/src/board/mod.rs @@ -58,6 +58,18 @@ impl PieceType { let index = *self as usize; Self::from(index % 6) } + // Return the price of the peice + pub fn static_eval(&self) -> f32 { + match self.without_color() { + PieceType::Pawn => 1., + PieceType::Bishop => 3., + PieceType::Knight => 3., + PieceType::Rook => 4.5, + PieceType::Queen => 9., + PieceType::King => 0., + _ => panic!("Piece should be without color"), + } + } } const PIECE_CHARS: [&str; 12] = [ |