public void TestElenverCarteduDessousAvecSuperposition()
 {
     Terrain curPose = new Terrain(2);
     Carte maCarte1 = new Carte("Carte1", TypeCarte.Instantanee, 1, 1, 12);
     bool AjoutOK = curPose.ajouterCarte(maCarte1);
     Carte maCarte2 = new Carte("Carte2", TypeCarte.Instantanee, 1, 1, 7);
     AjoutOK = curPose.poserSur(1, maCarte2);
     curPose.enleverCarte(1,true);
     Assert.AreEqual(0, curPose.Count, "Enlever Carte dessous Count NOK");
 }
Exemplo n.º 2
0
 public void TestCreationDeDeckEtAjoutUneCarte()
 {
     Deck MonDeck = new Deck();
     Assert.AreEqual(0,MonDeck.Count,"Création Deck pas vide") ;
     Carte maCarte = new Carte("Test1",TypeCarte.Instantanee,1,1,12 ) ;
     MonDeck.ajouterCarte(maCarte);
     Assert.AreEqual(1,MonDeck.Count,"Ajout de Carte NOK") ;
     Assert.AreEqual(12, MonDeck.valeurDeck, "Valeur Deck NOK avec 1 élément");
     Assert.AreEqual(maCarte, MonDeck.prochaineCarte,"Prochaine Carte NOK ");
 }
 public void TestElenverCarteSuperposée()
 {
     Terrain curPose = new Terrain(2);
     Carte maCarte1 = new Carte("Carte1", TypeCarte.Instantanee, 1, 1, 12);
     bool AjoutOK = curPose.ajouterCarte(maCarte1);
     Carte maCarte2 = new Carte("Carte2", TypeCarte.Instantanee, 1, 1, 7);
     AjoutOK = curPose.poserSur(1, maCarte2);
     curPose.enleverCarte(1);
     Assert.AreEqual(1, curPose.Count, "Enlever Carte dessus Count NOK");
     Assert.AreEqual(maCarte1, curPose[1], "Enlever Cartes dessus Carte NOK");
 }
Exemplo n.º 4
0
 public void TestCarteSansValeur()
 {
     Carte maCarte = new Carte("Test1", TypeCarte.Instantanee, 10, 16, 148);
     Assert.AreEqual(TypeCarte.Instantanee, maCarte.TypeCarte, "Constructeur: Type Carte NOK");
     Assert.AreEqual(10, maCarte.attaque, "Constructeur: Attaque  NOK");
     Assert.AreEqual(16, maCarte.soin, "Constructeur: Soin NOK");
     Assert.AreEqual(148, maCarte.action, "Constructeur: Action NOK");
     Assert.AreEqual(148, maCarte.valeurCarte, "Constructeur: Valeur Carte par défaut NOK");
     Assert.AreEqual(0, maCarte.modificateurJoueur.Count, "Constructeur:  Total modificateur NOK");
     Assert.AreEqual(0, maCarte.modificateurAdversaire.Count, "Constructeur:  Total modificateur NOK");
 }
Exemplo n.º 5
0
        public void TestCreationDeDeckEtAjoutPlusieursCarte()
        {
            Deck MonDeck = new Deck();
            Carte maCarte1 = new Carte("Carte1", TypeCarte.Instantanee, 1, 1, 12);
            MonDeck.ajouterCarte(maCarte1);
            Carte maCarte2 = new Carte("Carte2", TypeCarte.Instantanee, 1, 1, 7);
            MonDeck.ajouterCarte(maCarte2);
            Assert.AreEqual(2, MonDeck.Count, "Ajout de 2 Cartes NOK");
            Assert.AreEqual(19, MonDeck.valeurDeck, "Valeur Deck NOK avec 2 éléments");
            Assert.AreEqual(maCarte1, MonDeck.prochaineCarte, "Prochaine Carte NOK avec 2 éléements ");


        }
        public void TestAjoutCarteEnTrop()
        {
            Terrain curPose = new Terrain(2);
            Assert.AreEqual(curPose.Count, 0, "Création de Terrain NOK");
            Carte maCarte1 = new Carte("Carte1", TypeCarte.Instantanee, 1, 1, 12);
            bool AjoutOK =  curPose.ajouterCarte(maCarte1);
            Carte maCarte2 = new Carte("Carte2", TypeCarte.Instantanee, 1, 1, 7);
            AjoutOK = curPose.ajouterCarte(maCarte2);
            Assert.AreEqual(true, AjoutOK, "Ajout Carte autorise NOK sur retour ajouterCarte");
            Assert.AreEqual(2, curPose.Count, "Ajout de 2 Cartes NOK");
            Assert.AreEqual(maCarte2, curPose[2], "Ajout 2éme carte pas à la bonne position ");
            Assert.AreEqual(maCarte1, curPose.prochaineCarte, "Prochaine Carte NOK avec 2 éléements ");
            Carte maCarte3 = new Carte("Carte3", TypeCarte.Instantanee, 1, 1, 7);
            AjoutOK = curPose.ajouterCarte(maCarte3);
            Assert.AreEqual(false, AjoutOK, "Ajout Carte Interdite NOK sur retour ajouterCarte");
            Assert.AreEqual(2, curPose.Count, "Ajout de 2 Cartes NOK sur Count");

        }
        //public virtual bool ajouterCarte(Carte curcarte)
        //{
        //    _cartes.Add(_cartes.Keys.DefaultIfEmpty(0).Max() + 1, curcarte);
        //    return true;
        //}

        public virtual bool ajouterCarte(Carte curcarte, int position = -1, bool remplaceExistante = true)
        {
            if (position == -1)
            {
                position = _cartes.Keys.DefaultIfEmpty(0).Max() + 1;
            }
            if (_cartes.ContainsKey(position))
            {
                if (remplaceExistante)
                {
                    _cartes.Remove(position);
                }
                else
                {
                    return(false);
                }
            }
            _cartes[position] = curcarte;
            return(true);
        }
Exemplo n.º 8
0
        public Carte jouerUneCarteDepuisLaMain(Carte maCarte)
        {
            if (maCarte.action > joueurActif["actions"])
            {
                return(null);
            }
            Carte curCarte = joueurActif.cartesEnMain.enleverCarte(maCarte);

            if (curCarte == null)
            {
                return(null);
            }

            if ((curCarte.TypeCarte & TypeCarte.Instantanee) == 0)
            {
                // Carte à ,poser du le terrain
                if (terrainJoueurActif.positionsLibres.Count() == 0)
                {
                    return(null);
                }
                else
                {
                    terrainJoueurActif.ajouterCarte(curCarte);
                }
            }
            else
            {
                AppliquerCarte(curCarte);
            }

            joueurActif.appliquerModificateur(new Dictionary <string, decimal> {
                { "actions", -curCarte.action }
            });

            return(curCarte);
        }
Exemplo n.º 9
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="position"></param>
 /// <param name="curCarte"></param>
 /// <returns></returns>
 public bool poserSur(int position, Carte curCarte)
 {
     if (_cartes.ContainsKey(position))
     {
         if (!_cartesSupreposées.ContainsKey(position))
         {
             _cartesSupreposées[position] = new List<Carte>();
         }
         _cartesSupreposées[position].Add(curCarte);
         return true;
     }
     else
     {
         return false;
     }
 }
Exemplo n.º 10
0
        public override bool ajouterCarte(Carte curCarte)
        {

            
            if (positionsLibres.Count == 0)
            {
                return false;
            }
            int positionLibre = positionsLibres.First();
            _cartes[positionLibre] = curCarte;
            return true;

        }
 public override bool ajouterCarte(Carte curCarte, int position = -1, bool remplaceExistante = true)
 {
     if (positionsLibres.Count == 0)
     {
         return false;
     }
     int positionLibre = positionsLibres.First();
     _cartes[positionLibre] = curCarte;
     return true;
 }
 public virtual bool ajouterCarte(Carte curcarte)
 {
     _cartes.Add(_cartes.Keys.DefaultIfEmpty(0).Max() + 1, curcarte);
     return true;
 }
        public Carte jouerUneCarteDepuisLaMain(Carte maCarte)
        {
            if (maCarte.action > joueurActif["actions"])
            {
                return null;
            }
            Carte curCarte = joueurActif.cartesEnMain.enleverCarte(maCarte);
            if (curCarte == null)
            {
                return null;
            }

            if ((curCarte.TypeCarte & TypeCarte.Instantanee) == 0)
            {
                // Carte à ,poser du le terrain
                if (terrainJoueurActif.positionsLibres.Count() == 0)
                {
                    return null;
                }
                else
                {
                    terrainJoueurActif.ajouterCarte(curCarte);
                }
            }
            else
            {
                AppliquerCarte(curCarte);
            }

            joueurActif.appliquerModificateur(new Dictionary<string, decimal>{
                {"actions",-curCarte.action}
            });

            return curCarte;

        }
 public virtual bool ajouterCarte(Carte curcarte, int position = - 1, bool remplaceExistante = true)
 {
     if (position == -1)
     {
         position = _cartes.Keys.DefaultIfEmpty(0).Max() + 1;
     }
     if (_cartes.ContainsKey(position))
     {
         if (remplaceExistante)
         {
             _cartes.Remove(position);
         }
         else
         {
             return false;
         }
     }
     _cartes[position] = curcarte;
     return true;
 }
Exemplo n.º 15
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="nomCarte"></param>
        /// <returns></returns>
        public Carte jouerUneCarteDepuisLePlateau(string nomCarte)
        {
            Carte curCarte = terrainJoueurActif[nomCarte];

            return(jouerUneCarteDepuisLePlateau(curCarte));
        }
 public virtual Carte PrendreUneCarte(Carte curCarte)
 {
     return(enleverCarte(curCarte));;
 }
        public virtual Carte PrendreUneCarte(Carte curCarte)
        {

            return enleverCarte(curCarte); ;
        }
        public virtual Carte enleverCarte(Carte curCarte)
        {
            int positonCarte = _cartes.Where(s => s.Value == curCarte).Select(s => s.Key).FirstOrDefault();
            if (positonCarte == null)
            {
                return null;
            }
            else
            {

                _cartes.Remove(positonCarte);
                return curCarte;
            }
        }
        protected void AppliquerCarte(Carte curCarte)
        {
            joueurActif.appliquerModificateur(new Dictionary<string, decimal>{
                {"PV",curCarte.soin},
            });

            adversaireActif.appliquerModificateur(new Dictionary<string, decimal>{
                {"PV",-curCarte.attaque}
            });

            joueurActif.appliquerModificateur(curCarte.modificateurJoueur);
            adversaireActif.appliquerModificateur(curCarte.modificateurAdversaire);
        }
Exemplo n.º 20
0
        public void TestCarteAvecValeur()
        {
            Carte maCarte = new Carte("Test1", TypeCarte.Instantanee, 1, 1, 1,2);

            Assert.AreEqual(2, maCarte.valeurCarte, "Constructeur:  Valeur Carte explicite NOK");
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="curCarte"></param>
        /// <returns></returns>
        public Carte jouerUneCarteDepuisLePlateau(Carte curCarte)
        {
            if (curCarte == null || (curCarte.TypeCarte & TypeCarte.Retarde) == 0) return null;
            terrainJoueurActif.PrendreUneCarte(curCarte);
            AppliquerCarte(curCarte);

            return curCarte;
        }
Exemplo n.º 22
0
 public virtual bool ajouterCarte(Carte curcarte)
 {
     _cartes.Add(_cartes.Keys.DefaultIfEmpty(0).Max() + 1, curcarte);
     return(true);
 }