Deck to waste and waste to deck working-ish
This commit is contained in:
@@ -204,18 +204,26 @@ pub struct Klondike {
|
||||
pub foundation: [Vec<Card>; 4], // 4 = len of num suits
|
||||
_max_num_passes_through_deck: NumPassesThroughDeck,
|
||||
_current_num_passes_through_deck: u64,
|
||||
_num_cards_turned: u8,
|
||||
num_cards_turned: u8,
|
||||
}
|
||||
|
||||
impl Klondike {
|
||||
pub fn draw(self: &mut Self) {
|
||||
// completely temporary
|
||||
let c1 = self.deck.pop().unwrap();
|
||||
let c2 = self.deck.pop().unwrap();
|
||||
let c3 = self.deck.pop().unwrap();
|
||||
self.waste.push(c1);
|
||||
self.waste.push(c2);
|
||||
self.waste.push(c3);
|
||||
pub fn deck_to_waste(self: &mut Self) {
|
||||
for _ in 0..self.num_cards_turned {
|
||||
let card = self.deck.pop();
|
||||
match card {
|
||||
None => (),
|
||||
Some(c) => self.waste.push(c),
|
||||
}
|
||||
}
|
||||
}
|
||||
pub fn waste_to_deck(self: &mut Self) {
|
||||
if self.deck.len() != 0 {
|
||||
// no!
|
||||
} else {
|
||||
self.deck = self.waste.clone();
|
||||
self.waste = vec![];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -240,7 +248,7 @@ impl Default for Klondike {
|
||||
foundation: [Vec::new(), Vec::new(), Vec::new(), Vec::new()], // is this really the best way?
|
||||
_max_num_passes_through_deck: NumPassesThroughDeck::Unlimited,
|
||||
_current_num_passes_through_deck: 0,
|
||||
_num_cards_turned: 3,
|
||||
num_cards_turned: 3,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user