summaryrefslogtreecommitdiff
path: root/src/strategy/minimax.rs
diff options
context:
space:
mode:
authorJustin Worthe <justin@worthe-it.co.za>2019-08-06 20:15:39 +0200
committerJustin Worthe <justin@worthe-it.co.za>2019-08-06 20:15:39 +0200
commite8b28dbbcde3d00a9d82637644734b6c7e79b544 (patch)
treef0c52dba5233fa984e00bc38d7a1cf1488490780 /src/strategy/minimax.rs
parent298d67d4fdb36f8fb81ad6d8e817345e3d692558 (diff)
All valid moves list into the game sim
Diffstat (limited to 'src/strategy/minimax.rs')
-rw-r--r--src/strategy/minimax.rs14
1 files changed, 2 insertions, 12 deletions
diff --git a/src/strategy/minimax.rs b/src/strategy/minimax.rs
index 8a45750..4b10014 100644
--- a/src/strategy/minimax.rs
+++ b/src/strategy/minimax.rs
@@ -283,7 +283,8 @@ fn pruned_moves(state: &GameBoard, player_index: usize) -> Vec<Command> {
let my_starting_health = state.players[player_index].health();
let opponent_starting_health = state.players[opponent_index].health();
- valid_moves(state, player_index)
+ state
+ .valid_moves(player_index)
.into_iter()
.filter(|command| {
//NB: These rules should pass for doing nothing, otherwise
@@ -300,14 +301,3 @@ fn pruned_moves(state: &GameBoard, player_index: usize) -> Vec<Command> {
})
.collect()
}
-
-fn valid_moves(state: &GameBoard, player_index: usize) -> Vec<Command> {
- state
- .valid_shoot_commands(player_index)
- .iter()
- .chain(state.valid_move_commands(player_index).iter())
- .chain(state.valid_bomb_commands(player_index).iter())
- .chain([Command::new(Action::DoNothing)].iter())
- .cloned()
- .collect()
-}