public void DealAllCard() { MainDeck.Clear(); SubPrimaryDeck.Clear(); Console.WriteLine("No cards left any more"); Console.WriteLine("You may quit the app now"); }
public void Clear() { switch (CurrentZone) { case Zone.SampleHand: SampleHand.Clear(); break; case Zone.Side: SideDeck.Clear(); break; case Zone.Main: MainDeck.Clear(); SideDeck.Clear(); break; default: return; } lock (DataSource) DataSource.Clear(); DeckChanged?.Invoke( listChanged: true, countChanged: true, card: null, touchedChanged: false, changedZone: CurrentZone, changeTerminatesBatch: true); }
public void ShuffleCards() { if (CounterForShuffle == 0) { CounterForShuffle++; SubPrimaryDeck = new List <int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52 }; } else { MainDeck.ForEach(p => SubPrimaryDeck.Add(p)); MainDeck.Clear(); SubMediumDeck.Clear(); } while (SubPrimaryDeck.Count != 0) { Picker = RdmPicker.Next(0, SubPrimaryDeck.Count); OneBefore = Picker - 1; OneAfter = Picker + 1; if (OneBefore >= 0) { SubMediumDeck.Add(SubPrimaryDeck[OneBefore]); SubPrimaryDeck.RemoveAt(OneBefore); } else { SinglePicker(); } if (OneAfter < SubPrimaryDeck.Count) { SubMediumDeck.Add(SubPrimaryDeck[OneAfter]); SubPrimaryDeck.RemoveAt(OneAfter); } else { SinglePicker(); } ShuffleAgain(); } Console.WriteLine($"**** Shuffled *******"); }
private void Shuffle() // перемешивает карты в MainDeck { Random rnd = new Random(); List <Card> list = new List <Card>(); list = MainDeck.OrderBy(item => rnd.Next()).ToList(); MainDeck.Clear(); foreach (var card in list) { MainDeck.Push(card); } }
public void SetupMainDeck() { MainDeck.Clear(); //create decks to be used and adds them to main Deck for (int counter = NumberOfDecksInPlay; counter > 0; counter = counter - 1) { IDeck _deck = new Deck(); _deck.Shuffle(7); //shuffle enough times to ensure random order foreach (ICard card in _deck.Cards) { MainDeck.Add(card); } } }