Example #1
0
        public void cocherCase()
        {
            Morpion morpion = new Morpion();

            morpion.saisieNomsJoueurs("a", "b");
            Assert.AreEqual(1, morpion.cocherCase(0, 0));
            Assert.AreEqual(0, morpion.cocherCase(0, 0));
            Assert.AreEqual(2, morpion.cocherCase(1, 0));
        }
Example #2
0
        public void gagner()
        {
            Morpion morpion = new Morpion();

            morpion.cocherCase(0, 0);
            morpion.cocherCase(1, 0);
            morpion.cocherCase(0, 1);
            morpion.cocherCase(2, 0);
            morpion.cocherCase(0, 2);
            Assert.AreEqual(1, morpion.gagner());
        }
Example #3
0
        public void getNomJoueurQuiClique()
        {
            Morpion morpion = new Morpion();

            morpion.saisieNomsJoueurs("a", "b");
            morpion.cocherCase(0, 0);
            Assert.AreEqual("a", morpion.getNomJoueurQuiClique());
        }
Example #4
0
        public void recommancerPartie()
        {
            Morpion morpion = new Morpion();

            morpion.saisieNomsJoueurs("a", "b");
            morpion.recommancerPartie();
            Assert.IsTrue(morpion.isJoueurCourantNotNull());
            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    Assert.AreNotEqual(0, morpion.cocherCase(i, j));
                }
            }
        }
Example #5
0
        //cette méthode demande à la classe morpion du code métier ce qu'elle doit faire
        private void imageGeneralFunction(Image image, int x, int y)
        {
            //si le joueur courant n'est pas nul, la partie est en cours et donc on demande au metier quoi faire
            if (morpion.isJoueurCourantNotNull())
            {
                int numJoueur = morpion.cocherCase(x, y);

                //si le metier retourne 1, alors on dessine une croix
                if (numJoueur == 1)
                {
                    image.Source = new BitmapImage(new Uri(@"/Assets/croix.jpg", UriKind.Relative));
                    //ensuite on génère l'historique
                    genererHistorique(x, y);

                    //si le joueur2 est une IA et que l'on est pas au dernier tour
                    if (((this.morpion.Joueur2.Nom == "ia") || (this.morpion.Joueur2.Nom == "IA")) && (this.morpion.Tour < 9))
                    {
                        tourIA();
                    }
                }

                //si le metier retourne 2, alors on dessine un rond
                else if (numJoueur == 2)
                {
                    image.Source = new BitmapImage(new Uri(@"/Assets/rond.jpg", UriKind.Relative));
                    //ensuite on génère l'historique
                    genererHistorique(x, y);
                }
                //si le metier retourne autre chose que 1 ou 2, alors on ne fait rien

                //ensuite, il faut vérifier si l'un des joueurs gagne, pour ce faire on va à nouveau demandé au métier d'agir
                if (this.morpion.gagner() == 1)
                {
                    MessageBox.Show(this.morpion.Joueur1.Nom + " a gagné !");
                }
                else if (this.morpion.gagner() == 2)
                {
                    MessageBox.Show(this.morpion.Joueur2.Nom + " a gagné !");
                }
            }
        }