summaryrefslogtreecommitdiff
path: root/model/src/possible_moves.rs
diff options
context:
space:
mode:
authorBotahamec <botahamec@outlook.com>2021-07-13 18:27:13 -0400
committerBotahamec <botahamec@outlook.com>2021-07-13 18:27:13 -0400
commit244786ead1ab1549a8ccc723addda90a7481daea (patch)
treef94b27fe4658cdc86590c9f58d64d901a9b07e54 /model/src/possible_moves.rs
parentbf9e9af7f45433def26d2d2094a04798cb0282c0 (diff)
Moved `can_jump` into `backward_right_movers`
Diffstat (limited to 'model/src/possible_moves.rs')
-rw-r--r--model/src/possible_moves.rs15
1 files changed, 5 insertions, 10 deletions
diff --git a/model/src/possible_moves.rs b/model/src/possible_moves.rs
index 8c25520..089ccf6 100644
--- a/model/src/possible_moves.rs
+++ b/model/src/possible_moves.rs
@@ -8,7 +8,6 @@ pub struct PossibleMoves {
forward_right_movers: u32,
backward_left_movers: u32,
backward_right_movers: u32,
- jump: bool,
}
impl IntoIterator for PossibleMoves {
@@ -53,7 +52,6 @@ impl PossibleMoves {
forward_right_movers,
backward_left_movers,
backward_right_movers,
- jump: false,
}
}
@@ -88,7 +86,6 @@ impl PossibleMoves {
forward_right_movers,
backward_left_movers,
backward_right_movers,
- jump: false,
}
}
@@ -130,8 +127,7 @@ impl PossibleMoves {
forward_left_movers,
forward_right_movers,
backward_left_movers,
- backward_right_movers,
- jump: true,
+ backward_right_movers: backward_right_movers | 2,
}
}
@@ -173,8 +169,7 @@ impl PossibleMoves {
forward_left_movers,
forward_right_movers,
backward_left_movers,
- backward_right_movers,
- jump: true,
+ backward_right_movers: backward_right_movers | 2,
}
}
@@ -279,15 +274,15 @@ impl PossibleMoves {
/// Returns true if no moves are possible
pub const fn is_empty(self) -> bool {
(self.backward_left_movers
- | self.forward_left_movers
+ | (self.forward_left_movers)
| self.forward_right_movers
- | self.backward_right_movers)
+ | self.backward_right_movers & 4294967293)
== 0
}
/// Returns true if the piece can jump
pub const fn can_jump(self) -> bool {
- self.jump
+ (self.backward_right_movers & 2) != 0
}
/// Returns the pieces who can move forward left,