示例#1
0
        /*Méthode permettant de proposer au joueur de se déplacer dans les salles du jeu
         * En Entrée: la liste des différentes pièces de la partie en cours et le joueur courant
         * En sortie: la pièce choisie  par le joueur
         */
        public static Piece ChoisirPiece(List <Piece> listeChoixPossibles, Joueur j)
        {
            //contrôle si l'action a été effectuée ou non
            bool estEntre = false;

            //lieu d'arrivée du joueur après exécution de la fonction
            Piece destination;

            Console.ForegroundColor = ConsoleColor.Yellow;
            do
            {
                Console.WriteLine("Où voulez vous aller ?");
                int i = 0;
                //décompte des pièces
                foreach (Piece p in listeChoixPossibles)
                {
                    i++;
                    Console.WriteLine(i + " : " + p.Nom);
                }
                Console.ResetColor();

                //gestion des erreurs de saisie
                int piecechoisie = VerifSaisie(i);

                //correspondance entre la saisie et les propositions
                destination = listeChoixPossibles.ElementAt(piecechoisie - 1);

                //vérification du droit d'accès et description de la pièce de destination si autorisé
                estEntre = j.Deplacer(destination);
            } while (!estEntre);

            return(destination);
        }
示例#2
0
        static void Main(string[] args)
        {
            bool rejouer = true;

            do
            {
                // Instanciation du personnage joueur
                Console.ForegroundColor = ConsoleColor.DarkMagenta;
                Console.WriteLine("\n\n\n\n\n\n\n\n\n");
                Console.WriteLine("                        ALCHIMED : EXPERIMENTONS LE FUTUR");
                Console.WriteLine("                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
                Console.ReadKey();
                Console.ResetColor();
                Console.Clear();
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.Write("Bienvenue dans le jeu ALCHIMED ! Pour la suite vous allez incarner un personnage");
                Console.WriteLine("\nVeuillez entrer son prénom");
                Console.ResetColor();
                string prenom = Console.ReadLine();
                titan = new Joueur(prenom);
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine("\nVeuillez choisir sa caractéristique principale");
                titan.AttribuerCaracteristique();
                Console.WriteLine("\nAmusez vous bien !");
                Console.ResetColor();
                Console.ReadKey();


                //Instanciation de l'environnement de jeu

                // Construction des personnages non joueurs
                Bagarreur edgar = new Bagarreur("Edgar", 20);

                // Construction des objets
                ObjetSpecial ob1  = new ObjetSpecial("un lit", "Que ce lit est douillet...", Effets.regenerateur);
                ObjetSpecial ob2  = new ObjetSpecial("un poste radio", "Bonne idée, écoutons un peu de musique pour se détendre...", Effets.stress);
                ObjetSpecial ob3  = new ObjetSpecial("une table avec de la nourriture", "Il y a des smoothies et des gateaux, vous vous régalez !", Effets.vieP);
                ObjetSpecial ob4  = new ObjetSpecial("des haltères", "Vous pouvez utiliser les haltères pour un petit entraînement du haut du corps.", Effets.force1);
                ObjetSpecial ob5  = new ObjetSpecial("une presse", "Vous pouvez entraîner le bas de votre corps grâce à la presse !", Effets.force2);
                ObjetSpecial ob6  = new ObjetSpecial("un tapis de course", "Votre cardio va vite s'améliorer avec cet entraînement !", Effets.force3);
                Objet        ob7  = new Objet("une armoire", "Cette armoire est remplie de toutes sortes de choses...");
                Objet        ob8  = new Objet("une table basse", "Il y a un tas de journaux et de livres posés ici...");
                Objet        ob9  = new Objet("une blouse sur le porte manteau", "C'est une très belle blouse ! Je ne sais pas à qui elle est...");
                Objet        ob10 = new Objet("un tableau", "Ce tableau est magnifique ! On pourrait rester ici des heures à le contempler...");
                Objet        ob11 = new Objet("une fenêtre", "On a l'impression d'être en pleine nature ici ! Il y a des arbres et des fleurs à perte de vue...");
                Objet        ob12 = new Objet("une lampe de bureau", "Cette lampe me rappelle celle de ma grand mère...");
                Objet        ob13 = new Objet("un canapé", "Ce canapé marron a l'air douillet, et il vous tend les bras...");
                Objet        ob14 = new Objet("des paillasses", "Ces paillasses me seront utiles pour mélanger les substances et fabriquer la potion.");
                Objet        ob15 = new Objet("une armoire", "C'est génial, cette armoire est remplie de substances chimiques en tous genre.");
                Objet        ob16 = new Objet("un carton", "Ce carton a l'air poussiéreux...");
                Objet        ob17 = new Objet("un livre", "Je me demande ce qu'il y a dans ce livre...");

                // Construction des salles
                Piece salleRepos = new Piece("la salle de repos", new List <Objet>()
                {
                    ob1, ob2, ob3
                });
                Piece salleEntrainement = new Piece("la salle d'entraînement", new List <Objet>()
                {
                    ob4, ob5, ob6
                });
                Piece salleEtude = new Piece("la salle d'étude", new List <Objet>()
                {
                    ob7, ob8, ob9, ob10, ob11, ob12, ob13
                });
                salleEtude.AttribuerSavoir();
                Piece laboratoire = new Piece("le laboratoire", new List <Objet>()
                {
                    ob14, ob15, ob16, ob17
                });

                //Construction du Bâtiment Alchimed, enceinte du jeu
                Alchimed = new List <Piece> {
                    salleRepos, salleEtude, salleEntrainement, laboratoire
                };

                Console.WriteLine("\nEnfin ! La lettre d’Alchimed est arrivée...\n 'Félicitations, vous avez été présélectionné pour " +
                                  "intégrer notre prestigieux\n  programme ! Nous vous invitons désormais à nous rejoindre afin de vous\n  préparer au mieux " +
                                  "à la sélection finale. Comme vous le savez, cela consiste\n  à la fabrication d’un médicament dans un contexte imposé et un temps imparti.'");

                Console.WriteLine("Deux jours après, je me rendais à l’adresse indiquée dans la lettre et me\ntrouvais devant un bâtiment imposant," +
                                  " d’un blanc éclatant.\nJe me présentais alors à l'accueil d’Alchimed...\n\n 'Bonjour, bienvenue chez Alchimed ! Vous êtes" +
                                  " {0} n’est ce pas ? Je vais\n vous présenter les locaux qui vous ont été attribués et les différents éléments à votre" +
                                  " disposition.Vous pourrez rester ici aussi longtemps que nécessaire !\n Suivez - moi...\n\n La première pièce à votre gauche" +
                                  " est la salle de repos, où vous pourrez vous\n détendre et vous reposer. Ensuite, la seconde pièce à votre gauche est la\n salle d'étude," +
                                  " c'est ici que vous allez pouvoir enrichir votre culture. Sur\n votre droite se trouve la salle d'entraînement, où divers équipements" +
                                  " vous\n permettront d'améliorer votre force. Enfin, au boût du couloir se trouve le\n grand Laboratoire. Lorsque vous serez " +
                                  "suffisamment entraîné et vous sentirez\n prêt, présentez vous devant l'entrée. C'est là où se déroulera l'épreuve finale" +
                                  " Je vous laisse maintenant !'", titan._nom);

                //Première action du joueur : choisir une pièce à explorer
                Piece destination;
                do
                {
                    //présentation des pièces et analyse du choix du joueur
                    destination = ChoisirPiece(Alchimed, titan);
                    //vérification des conditions d'accès
                    bool permission = titan.Deplacer(destination);
                    // boucle de choix objet-action dans la pièce courante
                    do
                    {
                        titan.DeplacerVersObjet(destination);
                    }while ((permission) && (Console.ReadKey().KeyChar != 'b'));
                    //le joueur a appuyé sur 'b', il souhaite donc changer de pièce
                } while (destination != laboratoire);


                //titan.Deplacer(laboratoire);
                //série d'actions quand le joueur souhaite créer une potion --> si veut interagir avec le bécher
                // Titan._inventaireSubstances.Add(Substances.dimercaprol);
                // bool prendlafuite = edgar.Defier(Titan);
                //if (prendlafuite == true) { Titan.SeReposer(salleRepos); }

                // fin du jeu : proposer de rejouer + enregistrement score
            } while (rejouer);
        }//fin du Main
示例#3
0
        static void Main(string[] args)
        {
            Console.WriteLine("Bienvenue dans le jeu ALCHIMED ! Pour la suite vous allez incarner un personnage,\nVeuillez entrer son nom");
            string nom = Console.ReadLine();

            Console.WriteLine("\nVeuillez entrer son prénom");
            string prenom = Console.ReadLine();
            Joueur Titan  = new Joueur(prenom);

            Console.WriteLine("\nVeuillez choisir sa caractéristique principale");
            Titan.AttribuerCaracteristique();

            Console.WriteLine(Titan);

            Bagarreur edgar = new Bagarreur("Edgar", 20);

            Objet ob1  = new Objet("un lit", "un beau lit");
            Objet ob2  = new ObjetSpecial("une table", "une belle table", Effets.force1);
            Objet ob3  = new ObjetSpecial("une chaise", "une belle chaise", Effets.force2);
            Objet ob4  = new Objet("une couverture", "une belle couverture");
            Objet ob44 = new Objet("un plaid", "un plaid moche");
            Objet ob5  = new ObjetSpecial("un tabouret", "un beau tabouret", Effets.force3);
            Objet ob6  = new Objet("une armoire", "une belle armoire remplie");
            Objet ob66 = new Objet("une penderie", "une penderie mal rangée");
            Objet ob7  = new ObjetSpecial("une blouse", "un très belle blouse", Effets.vieM);

            Piece salleRepos = new Piece("la salle de repos", new List <Objet>()
            {
                ob1, ob2, ob3
            });

            Piece salleEtude = new Piece("la salle d'étude", new List <Objet>()
            {
                ob4, ob44, ob5
            });

            salleEtude.AttribuerSavoir();

            Piece laboratoire = new Piece("le laboratoire", new List <Objet>()
            {
                ob6, ob66, ob7
            });

            salleRepos.Numeroter();

            Titan._inventaireSubstances.Add(Substances.sub1);

            edgar.Defier(Titan);

            // bool name = edgar.Defier(Titan);
            // if (name == true) { Titan.Deplacer(salleRepos); }



            Console.WriteLine(salleRepos);

            Titan.DeplacerVersObjet(salleRepos);

            Titan.DeplacerVersObjet(salleRepos);

            Titan.DeplacerVersObjet(salleRepos);

            Console.WriteLine(Titan);


            salleEtude.Numeroter();

            Console.WriteLine(salleEtude);

            Titan.DeplacerVersObjet(salleEtude);

            Titan.DeplacerVersObjet(salleEtude);

            Titan.DeplacerVersObjet(salleEtude);

            Titan.DeplacerVersObjet(salleEtude);

            Console.WriteLine(Titan);

            Titan._savoirs.Add(Savoirs.Chimie);
            Titan._savoirs.Add(Savoirs.Culture);

            List <Piece> pieces = new List <Piece> {
                salleRepos, salleEtude, laboratoire
            };

            Console.ForegroundColor = ConsoleColor.Yellow;

            Console.WriteLine("Où voulez vous aller ?");

            foreach (Piece piece in pieces)
            {
                Console.WriteLine(piece._nom + "\n");
            }

            Console.ResetColor();

            Titan.Deplacer(laboratoire);
        }
示例#4
0
        static void Main(string[] args)
        {
            // Instanciation du personnage joueur
            Console.WriteLine("Bienvenue dans le jeu ALCHIMED ! Pour la suite vous allez incarner un personnage,\nVeuillez entrer son nom");
            string nom = Console.ReadLine();

            Console.WriteLine("\nVeuillez entrer son prénom");
            string prenom = Console.ReadLine();
            Joueur Titan  = new Joueur(prenom);

            Console.WriteLine("\nVeuillez choisir sa caractéristique principale");
            Titan.AttribuerCaracteristique();
            Console.WriteLine(Titan);

            //Instanciation de l'environnement de jeu

            //construction des personnages non joueurs
            Bagarreur edgar = new Bagarreur("Edgar", 20);
            //construction des objets
            Objet ob1  = new Objet("un lit", "un beau lit");
            Objet ob2  = new ObjetSpecial("une table", "une belle table", Effets.force1);
            Objet ob3  = new ObjetSpecial("une chaise", "une belle chaise", Effets.force2);
            Objet ob4  = new Objet("une couverture", "une belle couverture");
            Objet ob44 = new Objet("un plaid", "un plaid moche");
            Objet ob5  = new ObjetSpecial("un tabouret", "un beau tabouret", Effets.force3);
            Objet ob6  = new Objet("une armoire", "une belle armoire remplie");
            Objet ob66 = new Objet("une penderie", "une penderie mal rangée");
            Objet ob7  = new ObjetSpecial("une blouse", "un très belle blouse", Effets.vieM);

            //construction des salles
            Piece salleRepos = new Piece("la salle de repos", new List <Objet>()
            {
                ob1, ob2, ob3
            });
            Piece salleSport = new Piece("la salle de sport", new List <Objet>()
            {
                ob1, ob2, ob3
            });
            Piece salleEtude = new Piece("la salle d'étude", new List <Objet>()
            {
                ob4, ob44, ob5
            });

            salleEtude.AttribuerSavoir();
            Piece laboratoire = new Piece("le laboratoire", new List <Objet>()
            {
                ob6, ob66, ob7
            });
            //Construction du Centre Alchimed, enceinte du jeu
            List <Piece> Alchimed = new List <Piece> {
                salleEtude, salleRepos, salleSport, laboratoire
            };

            //Première action du joueur : entrée dans une pièce
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("Où voulez vous aller ?");
            int i = 0;

            //décompte des pièces
            foreach (Piece p in Alchimed)
            {
                i++;
                Console.WriteLine(i + " : " + p.Nom);
            }
            Console.ResetColor();
            //gestion des erreurs de saisie
            int   piecechoisie = VerifSaisie(i);
            Piece destination  = Alchimed.ElementAt(piecechoisie - 1);

            Titan.Deplacer(destination);

            // boucle d'action dans la pièce
            do
            {
                Titan.DeplacerVersObjet(destination);
            }while (Console.ReadKey().Key == ConsoleKey.Enter);
            switch (Console.ReadKey().Key)
            {
            case ConsoleKey.Escape:
                Quitter();
                break;

            case ConsoleKey.A:
                //AffichAide(); à créer
                break;

            case ConsoleKey.I:
                //AffichInventaire :Console.WriteLine(Titan);
                break;
                //case ....
            }
            Console.WriteLine(Titan);

            /*
             * Console.WriteLine(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Console.WriteLine(Titan);
             *
             * Titan._savoirs.Add(Savoirs.Chimie);
             * Titan._savoirs.Add(Savoirs.Culture);
             *
             * Titan.Deplacer(laboratoire);
             *   //série d'actions quand le joueur souhaite créer une potion --> si veut interagir avec le bécher
             * // Titan._inventaireSubstances.Add(Substances.dimercaprol);
             * // bool prendlafuite = edgar.Defier(Titan);
             * //if (prendlafuite == true) { Titan.Deplacer(salleRepos); }
             */
        } //fin du Main
示例#5
0
        static void Main(string[] args)
        {
            //Initialisation du joueur
            Console.WriteLine("Bienvenue dans le jeu ALCHIMED ! Pour la suite vous allez incarner un personnage,\nVeuillez entrer son nom");
            string nom = Console.ReadLine();

            Console.WriteLine("\nVeuillez entrer son prénom");
            string prenom = Console.ReadLine();
            Joueur Titan  = new Joueur(prenom);

            Console.WriteLine("\nVeuillez choisir sa caractéristique principale");
            Titan.AttribuerCaracteristique();

            //Affichage des caractéristiques du joueur
            Console.WriteLine(Titan);

            //Initialisation de l'environnement de jeu
            Bagarreur edgar = new Bagarreur("Edgar", 20);

            Objet ob1  = new Objet("un lit", "un beau lit");
            Objet ob2  = new ObjetSpecial("une table", "une belle table", Effets.force1);
            Objet ob3  = new ObjetSpecial("une chaise", "une belle chaise", Effets.force2);
            Objet ob4  = new Objet("une couverture", "une belle couverture");
            Objet ob44 = new Objet("un plaid", "un plaid moche");
            Objet ob5  = new ObjetSpecial("un tabouret", "un beau tabouret", Effets.force3);
            Objet ob6  = new Objet("une armoire", "une belle armoire remplie");
            Objet ob66 = new Objet("une penderie", "une penderie mal rangée");
            Objet ob7  = new ObjetSpecial("une blouse", "un très belle blouse", Effets.vieM);

            Piece salleRepos = new Piece("la salle de repos", new List <Objet>()
            {
                ob1, ob2, ob3
            });

            Piece salleEtude = new Piece("la salle d'étude", new List <Objet>()
            {
                ob4, ob44, ob5
            });

            salleEtude.AttribuerSavoir();

            Piece laboratoire = new Piece("le laboratoire", new List <Objet>()
            {
                ob6, ob66, ob7
            });

            //Simulation des actions dans le labo :
            //prendre une substance dans la commode
            Titan._inventaireSubstances.Add(Substances.sub1);

            //Etre attaqué par un bagarreur
            bool prendlafuite = edgar.Defier(Titan);

            if (prendlafuite == true)
            {
                Titan.Deplacer(salleRepos);
            }

            //Simulation des actions possibles dans une pièce
            Titan.DeplacerVersObjet(salleRepos);

            Titan.DeplacerVersObjet(salleRepos);

            Titan.DeplacerVersObjet(salleRepos);

            //Affichage des caractéristiques du joueur
            //--> décider quand les afficher : au choix ou systématiquement après telle ou telle action ?
            Console.WriteLine(Titan);

            /* Test d'ajout des savoirs
             * Console.WriteLine(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Titan.DeplacerVersObjet(salleEtude);
             *
             * Console.WriteLine(Titan);
             *
             * Titan._savoirs.Add(Savoirs.Chimie);
             * Titan._savoirs.Add(Savoirs.Culture);
             *
             * List<Piece> pieces = new List<Piece> { salleRepos, salleEtude, laboratoire };
             *
             * Console.ForegroundColor = ConsoleColor.Yellow;
             *
             * //Liste des pièces et proposition de déplacement
             * Console.WriteLine("Où voulez vous aller ?");
             *
             * for (int i=0; i< pieces.Count; i++)
             * {
             *  Console.WriteLine((i+1 + " : " +pieces[i]._nom + "\n");
             * }
             *
             * Console.ResetColor();
             *
             * Titan.Deplacer(laboratoire);
             */
        }