//regroupement des methodes pour initialiser une partie public async void startPartieAsync() { //Distribue les cartes aux joueurs. pioche.distribuerCartes(listeJoueur); //Retourne une carte de départ sur le paquet de Dépot. depot.deposerCarte(pioche.getCarte()); //Creer une methode tour qui entre en argument le premier joueur. jouer(); }
public void OnCardPlayed(Object source, PlayerEventArgs e, CardEventArgs s) { if (e.Joueur == this) { for (int i = 0; i < this.nbCartes(); i++) { try { //Valet peut être jouer à n'importe quel moment if (this.getCarte(i).GetValeur() == 11) { var t = Task.Factory.StartNew(() => { Task.Delay(1500).Wait(); Console.WriteLine(this.pnom + " " + this.nom + " a joué un : " + this.getCarte(i)); this.jouerCarte(this.getCarte(i)); }); t.Wait(); break; } //Vérifie que la carte peut être jouer else if (s.Carte.GetCouleur() == this.getCarte(i).GetCouleur() || s.Carte.GetValeur() == this.getCarte(i).GetValeur()) { var t = Task.Factory.StartNew(() => { Task.Delay(1500).Wait(); Console.WriteLine(this.pnom + " " + this.nom + " a joué un/une " + this.getCarte(i)); this.jouerCarte(this.getCarte(i)); }); t.Wait(); break; } else if (i == this.nbCartes() - 1) { var t = Task.Factory.StartNew(() => { Task.Delay(1500).Wait(); this.pige(paquetP.getCarte()); Console.WriteLine("Vous avez pigé un/une " + this.getCarte(this.nbCartes() - 1)); }); t.Wait(); break; } } catch (Exception exception) { Console.WriteLine(exception.Message); } } } }