Esempio n. 1
0
        public bool Defier(Joueur pj)
        {
            Substances substanceVolee = pj._inventaireSubstances[0];

            pj._inventaireSubstances.Remove(substanceVolee);
            Console.WriteLine(this._nom + " vous a volé le " + substanceVolee + " pour vous défier.");

            bool abandon = false;

            bool finCombat = false;

            while ((finCombat == false) && (abandon == false))
            {
                pj._ptVie -= this._degat;
                Console.WriteLine(this._nom + " vous attaque. Vous perdez " + this._degat + " points de vie. " +
                                  "Il vous reste " + pj._ptVie + " points de vie.");
                Console.WriteLine("Que voulez-vous faire ?\n1 : Répliquer avec un coup de pied\n2 : Répliquer avec un coup de poing" +
                                  "\n3 : Abandonner puis aller reprendre des forces dans la salle de repos");
                int choix = int.Parse(Console.ReadLine());
                if ((choix == 1) || (choix == 2))
                {
                    pj.Defier(this, choix);
                }
                if (choix == 3)
                {
                    abandon = true;
                }

                if ((pj._ptVie <= 0) || (this._ptVie <= 0))
                {
                    finCombat = true;
                }
            }

            if (this._ptVie == 0)
            {
                pj._inventaireSubstances.Add(substanceVolee);
                Console.WriteLine("Bravo ! Vous avez récupéré la substance qui vous avait été volée !" +
                                  " Vous pouvez continuer à préparer la potion.");
            }
            else if (abandon == true)
            {
                Console.WriteLine("Vous abandonnez et allez vous reposer");
            }
            else
            {
                // Appel à la fonction qui quitte le jeu
                Console.WriteLine("Perdu");
            }

            return(abandon);
        }
Esempio n. 2
0
        // Méthode permettant au bagarreur de défier le joueur en lui volant une de ses substances et en l'attaquant
        // En entrée : le joueur pj
        // En sortie : un booléen indiquant si le joueur a abandonné (true si oui) et doit aller en salle de repos
        internal bool Defier(Joueur pj)
        {
            // la bagarreur vole une substance au joueur
            Substances substanceVolee = pj._inventaireSubstances[0];

            pj._inventaireSubstances.Remove(substanceVolee);
            Console.WriteLine(this._nom + " vous a volé le " + substanceVolee + " pour vous défier.");

            bool abandon   = false;
            bool finCombat = false;

            // COMBAT
            while ((finCombat == false) && (abandon == false))
            {
                pj._ptVie -= this._degat;
                Console.WriteLine(this._nom + " vous attaque. Vous perdez " + this._degat + " points de vie. " +
                                  "Il vous reste " + pj._ptVie + " points de vie.");

                Console.WriteLine("Que voulez-vous faire ?\n1 : Répliquer avec un coup de pied\n2 : Répliquer avec un coup de poing" +
                                  "\n3 : Abandonner puis aller reprendre des forces dans la salle de repos");
                int choix = int.Parse(Console.ReadLine());

                if ((choix == 1) || (choix == 2)) // si le joueur choisit de répliquer
                {
                    pj.Defier(this, choix);
                }
                if (choix == 3) // si le joueur choisit d'abandonner et de quitter le laboratoire
                {
                    abandon = true;
                }

                if ((pj._ptVie <= 0) || (this._ptVie <= 0))
                {
                    finCombat = true;
                }
            }

            // Test : pourquoi le combat s'est il arrêté

            // Soit le bagarreur n'a plus de vie, le joueur a gagné le combat
            if (this._ptVie <= 0)
            {
                pj._inventaireSubstances.Add(substanceVolee);
                Console.WriteLine("Bravo ! Vous avez récupéré la substance qui vous avait été volée !" +
                                  " Vous pouvez continuer à préparer la potion.");
            }

            // Soit le joueur a abandonné
            else if (abandon == true)
            {
                Console.WriteLine("Vous abandonnez et allez vous reposer");
            }

            // Soit le joueur n'a plus de vie, le joueur a perdu la partie
            else
            {
                // FAIRE APPEL A LA FONCTION QUI PERMET DE QUITTER LE JEU
                Console.WriteLine("Perdu");
            }

            return(abandon);
        }
Esempio n. 3
0
        // Méthode permettant au bagarreur de défier le joueur en lui volant une de ses substances et en l'attaquant
        // En entrée : le joueur pj
        // En sortie : un booléen indiquant si le joueur a abandonné (true si oui) et doit aller en salle de repos
        internal bool Defier(Joueur pj)
        {
            // la bagarreur vole une substance au joueur
            Substances substanceVolee = pj._inventaireSubstances[0];

            pj._inventaireSubstances.Remove(substanceVolee);
            Console.WriteLine(this._nom + " vous a volé le " + substanceVolee + " pour vous défier.");

            bool abandon   = false;
            bool finCombat = false;

            // COMBAT
            while ((finCombat == false) && (abandon == false))
            {
                Console.WriteLine();
                pj._ptVie -= this._degat;
                Console.Write(this._nom + " vous attaque. Vous perdez " + this._degat + " points de vie. ");
                if (pj._ptVie <= 0)
                {
                    Console.WriteLine("Il ne vous reste aucun point de vie.");
                }
                else
                {
                    Console.WriteLine("Il vous reste " + pj._ptVie + " points de vie.");
                }

                if (pj._ptVie <= 0)
                {
                    finCombat = true;
                }
                else
                {
                    Console.WriteLine("Que voulez-vous faire ?\n1 : Répliquer avec un coup de pied\n2 : Répliquer avec un coup de poing" +
                                      "\n3 : Abandonner puis aller reprendre des forces dans la salle de repos");
                    int choix = Program.VerifSaisie(3);
                    Console.WriteLine();
                    if ((choix == 1) || (choix == 2)) // si le joueur choisit de répliquer
                    {
                        pj.Defier(this, choix);
                    }
                    if (choix == 3) // si le joueur choisit d'abandonner et de quitter le laboratoire
                    {
                        abandon = true;
                    }

                    if (this._ptVie <= 0)
                    {
                        finCombat = true;
                    }
                }
            }



            // Test : pourquoi le combat s'est il arrêté

            // Soit le joueur n'a plus de vie, le joueur a perdu la partie
            if (pj._ptVie <= 0)
            {
                Console.WriteLine("\nVous avez perdu !");
                Program.Quitter();
            }

            // Soit le bagarreur n'a plus de vie, le joueur a gagné le combat
            else if (this._ptVie <= 0)
            {
                pj._inventaireSubstances.Add(substanceVolee);
                Console.WriteLine("\nBravo ! Vous avez récupéré la substance qui vous avait été volée !" +
                                  " Vous pouvez continuer à préparer la potion.\n");
            }

            // Soit le joueur a abandonné
            else
            {
                Console.WriteLine("\nDommage ! Vous abandonnez et allez vous reposer.");
            }

            return(abandon);
        }