//regroupement des methodes pour initialiser une partie public async Task startPartie(List <Joueur> listeJoueurs, PaquetDepot paquetD, PaquetPioche paquetP, Paquet paquet) { //Instanciation pour les tests, a enlever apres. Joueur joueur; int nbJoueurs = listeJoueurs.Count; //Rempli le paquet de cartes de toutes les cartes du jeu. paquet.Remplir(); //Brasse les cartes. paquet.Brasser(10000); //Distribue les cartes aux joueurs. paquet.DistribuerCartes(listeJoueurs); //Retourne une carte de départ sur le paquet de Dépot. paquetD.DeposerCarte(paquet.GetCarte()); //Envoi les cartes a la fonction RemplirPioche qui remplit le paquetP. paquetP.RemplirPioche(paquet.GetPaquet()); //Vide le paquet. paquet.Vider(); //Choisi le premier joueur à jouer. joueur = JoueurDepart(listeJoueurs, nbJoueurs); //Creer une methode tour qui entre en argument le premier joueur. Jouer(joueur, listeJoueurs, paquetD, paquetP); }
//Menu secondaire. On choisi le nombre de personnes dans la partie. static void MenuSecondaire() { int choix; bool on = true; while (on) { PaquetPioche paquetP = new PaquetPioche(); PaquetDepot paquetD = new PaquetDepot(); Paquet paquet = new Paquet(); Joueur joueur1 = new Joueur("", "", paquetD, paquetP); Joueur joueur2 = new Joueur("", "", paquetD, paquetP); Joueur joueur3 = new Joueur("", "", paquetD, paquetP); Joueur joueur4 = new Joueur("", "", paquetD, paquetP); List <Joueur> listeJoueurs = new List <Joueur>(); listeJoueurs.Clear(); Partie partie = new Partie(); Console.WriteLine("Entrez le nombre de joueurs: "); Console.WriteLine("1 - Deux joueurs"); Console.WriteLine("2 - Trois Joueurs"); Console.WriteLine("3 - Quatre Joueurs"); Console.WriteLine("4 - Quitter"); try { choix = Int32.Parse(Console.ReadLine()); switch (choix) { case 1: for (int i = 1; i <= 2; i++) { Console.WriteLine("Joueur #" + i); if (i == 1) { Console.WriteLine("Quel est votre nom?"); joueur1.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur1.SetPnom(Console.ReadLine()); } else { Console.WriteLine("Quel est votre nom?"); joueur2.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur2.SetPnom(Console.ReadLine()); } } listeJoueurs.Add(joueur1); listeJoueurs.Add(joueur2); break; case 2: for (int i = 1; i <= 3; i++) { Console.WriteLine("Joueur #" + i); if (i == 1) { Console.WriteLine("Quel est votre nom?"); joueur1.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur1.SetPnom(Console.ReadLine()); } else if (i == 2) { Console.WriteLine("Quel est votre nom?"); joueur2.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur2.SetPnom(Console.ReadLine()); } else { Console.WriteLine("Quel est votre nom?"); joueur3.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur3.SetPnom(Console.ReadLine()); } } listeJoueurs.Add(joueur1); listeJoueurs.Add(joueur2); listeJoueurs.Add(joueur3); //ajouter trois joueurs. break; case 3: for (int i = 1; i <= 4; i++) { Console.WriteLine("Joueur #" + i); if (i == 1) { Console.WriteLine("Quel est votre nom?"); joueur1.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur1.SetPnom(Console.ReadLine()); } else if (i == 2) { Console.WriteLine("Quel est votre nom?"); joueur2.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur2.SetPnom(Console.ReadLine()); } else if (i == 3) { Console.WriteLine("Quel est votre nom?"); joueur3.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur3.SetPnom(Console.ReadLine()); } else { Console.WriteLine("Quel est votre nom?"); joueur4.SetNom(Console.ReadLine()); Console.WriteLine("Quel est votre prénom?"); joueur4.SetPnom(Console.ReadLine()); } } listeJoueurs.Add(joueur1); listeJoueurs.Add(joueur2); listeJoueurs.Add(joueur3); listeJoueurs.Add(joueur4); //ajouter quatre joueurs. break; case 4: Environment.Exit(0); break; default: Console.WriteLine("Vous devez entrer un chiffre entre 1 et 4"); break; } } catch { Console.WriteLine("Entrée invalide."); } partie.startPartie(listeJoueurs, paquetD, paquetP, paquet); } }