fix is_win
This commit is contained in:
+8
-9
@@ -624,14 +624,13 @@ impl Game for Klondike {
|
||||
}
|
||||
}
|
||||
fn is_win(&self) -> bool {
|
||||
// all face down cards empty means win
|
||||
self.state.stock.face_down().is_empty()
|
||||
&& self.state.tableau1.face_down().is_empty()
|
||||
&& self.state.tableau2.face_down().is_empty()
|
||||
&& self.state.tableau3.face_down().is_empty()
|
||||
&& self.state.tableau4.face_down().is_empty()
|
||||
&& self.state.tableau5.face_down().is_empty()
|
||||
&& self.state.tableau6.face_down().is_empty()
|
||||
&& self.state.tableau7.face_down().is_empty()
|
||||
// all foundations contain all ranks
|
||||
self.state.foundations.iter().all(|foundation| {
|
||||
foundation.len() == Rank::RANKS.len()
|
||||
&& foundation
|
||||
.iter()
|
||||
.zip(Rank::RANKS)
|
||||
.all(|(card, rank)| card.rank() == rank)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user