diff options
author | Justin Worthe <justin@worthe-it.co.za> | 2018-08-12 09:37:44 +0200 |
---|---|---|
committer | Justin Worthe <justin@worthe-it.co.za> | 2018-08-12 09:37:44 +0200 |
commit | a760bc7543b186714b11648e8be515dcdfc49b95 (patch) | |
tree | 25885299c77c41ed2d28f23e6e3414e4862c1410 /src/engine | |
parent | fe3fbbdd7b4c4cb243f859db63a0cc6070179839 (diff) |
Allowed monte carlo search to use iron curtains
Diffstat (limited to 'src/engine')
-rw-r--r-- | src/engine/bitwise_engine.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/engine/bitwise_engine.rs b/src/engine/bitwise_engine.rs index e9c1b0a..fb46567 100644 --- a/src/engine/bitwise_engine.rs +++ b/src/engine/bitwise_engine.rs @@ -87,6 +87,13 @@ impl BitwiseGameState { pub fn player_has_max_teslas(&self) -> bool { self.player_buildings.count_teslas() >= TESLA_MAX } pub fn opponent_has_max_teslas(&self) -> bool { self.opponent_buildings.count_teslas() >= TESLA_MAX } + pub fn player_can_build_iron_curtain(&self) -> bool { + self.player_buildings.iron_curtain_available && self.player_buildings.iron_curtain_remaining == 0 && self.player.energy >= IRON_CURTAIN_PRICE + } + pub fn opponent_can_build_iron_curtain(&self) -> bool { + self.opponent_buildings.iron_curtain_available && self.opponent_buildings.iron_curtain_remaining == 0 && self.opponent.energy >= IRON_CURTAIN_PRICE + } + pub fn unoccupied_player_cell_count(&self) -> usize { self.player_buildings.occupied.count_zeros() as usize } pub fn unoccupied_opponent_cell_count(&self) -> usize { self.opponent_buildings.occupied.count_zeros() as usize } pub fn location_of_unoccupied_player_cell(&self, i: usize) -> Point { |