Beispiel #1
0
 protected void OnPlayed(PlayedEventArgs e)
 {
     if (PlayedEvent != null)
     {
         PlayedEvent(this, e);
     }
 }
Beispiel #2
0
        private int JouerPli(List <Joueur> joueurs, ref Stack <Carte> pliActuelle, ref Stack <Carte> batailleActuelle)
        {
            int  indexGagnant = 0;
            bool jouer        = true;

            if ((joueurs[0].Main.Count() == 0))
            {
                jouer        = false;
                indexGagnant = 1;
            }
            else if (joueurs[1].Main.Count() == 0)
            {
                jouer        = false;
                indexGagnant = 0;
            }
            if (jouer)
            {
                foreach (Joueur joueur in joueurs)
                {
                    pliActuelle.Push(joueur.Main.Dequeue());
                }
                PlayedEventArgs args = new PlayedEventArgs();
                args.CarteJoueurs = new Stack <Carte>(pliActuelle.Reverse());
                OnPlayed(args);
                Carte meilleureCarte = null;
                int   index          = 0;
                foreach (Carte carte in pliActuelle)
                {
                    if (meilleureCarte != null)
                    {
                        if (meilleureCarte.CompareTo(carte) > 0)
                        {
                        }
                        else if (meilleureCarte.CompareTo(carte) == 0)
                        {
                            OnBataille(EventArgs.Empty);
                            foreach (Carte carte2 in pliActuelle)
                            {
                                batailleActuelle.Push(carte2);
                            }
                            pliActuelle.Clear();
                            foreach (Joueur joueur in joueurs)
                            {
                                batailleActuelle.Push(joueur.Main.Dequeue());
                            }
                            indexGagnant = JouerPli(joueurs, ref pliActuelle, ref batailleActuelle);// Bataille
                            break;
                        }
                        else
                        {
                            meilleureCarte = carte;
                            indexGagnant   = index;
                        }
                    }
                    else
                    {
                        meilleureCarte = carte;
                    }
                    index++;
                }
            }
            return(indexGagnant);
        }
Beispiel #3
0
 private static void PliJouee(object sender, PlayedEventArgs e)
 {
     Console.Write("Joueur 1 joue : " + e.CarteJoueurs.Pop());
     Console.Write("\t");
     Console.WriteLine("Joueur 2 joue : " + e.CarteJoueurs.Pop());
 }