public void HandOut(Gamers Gamers) { do // если нет козырей у игроков - пересдача { HandOutAttempt(Gamers); } while (Gamers.GetBeginnerIndex() == -1); }
static void Main() { Dealer Dealer = new Dealer(); Gamers Gamers = new Gamers(); // создали группу игроков Gamers.Add(new Gamer("Anton")); Gamers.Add(new Gamer("Victor")); Gamers.Add(new Gamer("Ivan")); Gamers.Add(new Gamer("Denis")); // Gamers.Add(new Gamer("Vasily")); // Gamers.Add(new Gamer("Anna")); Dealer.HandOut(Gamers); // раздали карты // Dealer.GetDeck().Print(); foreach (Gamer Gamer in Gamers) { Gamer.Print(); } Console.WriteLine(Gamers.GetBeginnerIndex()); }
private void HandOutAttempt(Gamers gamers) { int tIndex = Deck.LastIndex - CardInHand * gamers.Count; // индекс вскрываемого козыря if (tIndex == -1) { tIndex = 0; // если будут разданы все карты } Card trampCard = Deck[tIndex]; // ссылка на вскрываемый козырь InitTramp(trampCard); // обновили ранг карт ставших козырными Deck.Swap(tIndex, 0); // "вскрытый" козырь в конец колоды foreach (Gamer gamer in gamers) // раздать игрокам по 6 карт { gamer.AddCards(Deck, CardInHand); } }