diff --git a/src/logic/board_value.rs b/src/logic/board_value.rs index 79535c0..c35b676 100644 --- a/src/logic/board_value.rs +++ b/src/logic/board_value.rs @@ -6,12 +6,13 @@ impl BoardValueMap { pub fn board_value(&self, board: &Board, color: Piece) -> i64 { Board::all_positions() .filter_map(|(i, j)| board.get(i, j).map(|p| (i, j, p))) - .map(|(i, j, pos_p)| { - let mut value = *self.0.get(i, j); + .map(|(i, j, pos_p)| (*self.0.get(i, j), pos_p)) + .map(|(value, pos_p)| { if pos_p != color { // enemy has position - value = -value; + return -value; } + // target has position value }) .sum()