/// <summary> /// Distribute appropriate cards to all players. /// </summary> public void DistributeCards() { List <Card> availableCards = CardsDAO.GetCards(NbPlayers, Age); if (Age == 3) { availableCards = this.RemoveExtraGuildCards(availableCards); } Random rand = new Random(); foreach (Player player in this.Players) { for (int i = 0; i < GameConsts.STARTING_CARDS_NUMBER; i++) { Card nextCard = availableCards.ElementAt(rand.Next(availableCards.Count)); player.Hand.Add(nextCard); availableCards.Remove(nextCard); } } }