Beispiel #1
0
        /// <summary>
        /// Joue la carte juste au dessus de celle du joueur
        /// S'il ne possède pas la carte au dessus, joue la meme si la valeur absolu de la carteen jeu est > 4
        /// Sinon il joue sa plus faible carte
        /// </summary>
        /// <param name="P1"> Le joueur </param>
        /// <param name="Pot"> La carte en jeu </param>
        /// <returns> La carte jouée </returns>
        public Carte playChuck(Carte P1, Carte Pot)
        {
            foreach (Carte C in this.getCartes())
            {
                if (C.getValue() == P1.getValue() + 1)
                {
                    this.removeCarte(C);
                    this.setLastCardPlayed(C);
                    return(C);
                }
            }
            if (Math.Abs(Pot.getValue()) > 4)
            {
                foreach (Carte C in this.getCartes())
                {
                    if (C.getValue() == P1.getValue())
                    {
                        this.removeCarte(C);
                        this.setLastCardPlayed(C);
                        return(C);
                    }
                }
            }
            Carte c = this.getCartes()[0];

            return(playCard(c));
        }
Beispiel #2
0
 /// <summary>
 /// Ajoute le score au gagnant du tour
 /// </summary>
 /// <param name="turnWinner"> Gagnant du tour</param>
 public void addScore(Player turnWinner)
 {
     if (turnWinner != null)
     {
         for (int i = 0; i < players.Count(); i++)
         {
             if (turnWinner.Equals(players[i]))                                                                                               //retrouve le gagnant dans la liste de joueur
             {
                 players[i].setScore(currentCarte.getValue());                                                                                //Ajoute la valeur de la carte remporté a son score
                 plateau.displayTextLbWinner(players[i].getNom() + " prend la carte,\nil a maintenant " + players[i].getScore() + " points"); //Affiche en texte le gagnant et son nouveau score
                 plateau.majDisplayScore();                                                                                                   //MaJ des scores des joueurs
                 plateau.highLightPlayer(players.Count() - i);                                                                                //Met en avant le gagnant de la main
             }
         }
     }
     else
     {
         plateau.highLightPlayer(6);
         plateau.displayTextLbWinner("Aucun joueur ne prend cette carte,\nil y a surement égalité.");
     }
     if (sabot.Count == 0)                                                                                                                                                         //Signifie que la partie est fini
     {
         Player playWinner = getWinner();                                                                                                                                          //Trouve le gagnant de la partie
         plateau.displayMessage("La partie est fini, le joueur " + playWinner.getNom() + " remporte la partie avec " + playWinner.getScore().ToString() + " points. Bravo à lui"); //Affiche dans un pop-up la fin de la partie et son vainqueur
         Application.Restart();                                                                                                                                                    //Relance le menu une fois la partie fini
     }
 }
Beispiel #3
0
        /// <summary>
        /// Joue une carte en fonction de la valeur la carte en jeu
        /// </summary>
        /// <param name="currentCarte"> Carte en jeu </param>
        /// <param name="cartPlayed"> Tableau des cartes déjà jouées par les joueurs </param>
        /// <param name="nbJoueur"> Nombre de joueur dans la partie </param>
        /// <returns> La carte à jouée </returns>
        public Carte playEasy(Carte currentCarte, int[] cartPlayed, int nbJoueur)
        {
            switch (currentCarte.getValue())
            {
            //Pour une carte de -2 à 2, on joue les cartes de 9 à 15
            case -2:
            case -1:
            case 1:
            case 2:
                return(playCardInRank(9, 15, cartPlayed, nbJoueur));

            //Pour une carte de -4, -3 ou 3, 4, on joue les cartes de 9 à 13
            case -4:
            case -3:
            case 3:
            case 4:
                return(playCardInRank(7, 13, cartPlayed, nbJoueur));

            //Pour une carte de -5 ou 5 à 7, on joue les cartes de 4 à 9
            case -5:
            case 5:
            case 6:
            case 7:
                return(playCardInRank(3, 7, cartPlayed, nbJoueur));

            //Pour une carte de 8 à 10, on joue les cartes de 1 à 4
            case 8:
            case 9:
            case 10:
                return(playCardInRank(1, 4, cartPlayed, nbJoueur));
            }
            return(null);
        }