コード例 #1
0
        static void Main(string[] args)
        {
            Popullate.AddRandomData();
            Popullate.AddRandomData2();
            Console.WriteLine("###passwords for evaluator:");
            Console.WriteLine("###Head-Master account - surname:Pasparakis    password:giopas");
            Console.WriteLine("###Student account - surname:Georgilas    password:vasgeo");
            Console.WriteLine("###Trainer account - surname:Nikolaidis    password:micnik");
            Console.WriteLine("###Trainer account - surname:Vasileiadis    password:vyrvas");
            Console.WriteLine("###You can also see the class POPULLATE to see all the initial data and passwords");
            Console.WriteLine("\n");

            Passwords P = new Passwords();

            P.PasswordTry();

            if (P.type_user == "Student")
            {
                UserStudent.MenouStudent(P.user_id);
            }

            if (P.type_user == "Trainer")
            {
                UserTrainer.MenouTrainer(P.user_id);
            }
            if (P.type_user == "Head_Master")
            {
                UserHeadMaster.MenouHeadMaster(P.user_id);
            }
        }
コード例 #2
0
        /// <summary>
        /// Fonction de transition mettant fin au combat.
        /// </summary>
        void GérerTransitionEND()
        {
            GamePad.SetVibration(PlayerIndex.One, 0, 0);

            UserTrainer.MettreEnPremièrePosition(UserPokemon);
            EnCombat  = false;
            ÀDétruire = true;
        }
コード例 #3
0
        public override void Initialize()
        {
            EnCombat    = true;
            UserPokemon = UserTrainer.NextPokemonEnVie();
            GamePad.SetVibration(PlayerIndex.One, 1, 1);

            Générateur = new Random();
            MainMenu   = new BattleMenu(Game, PositionBox, new Vector2(Jeu.LargeurBoxMessage, Jeu.HauteurBoxMessage), IntervalMAJ, UserPokemon, UserTrainer);
            Game.Components.Add(MainMenu);

            AfficherMessagesInitialisation();
            AjouterLesTextesFixes();

            MainMenu.BattleMenuState = BattleMenuState.MAIN;
            CombatState = CombatState.BATTLE_MENU;
            base.Initialize();
        }
コード例 #4
0
ファイル: Combat.cs プロジェクト: Newplayer1/Magikarp
        public override void Update(GameTime gameTime)//mise à jour des tours tant que en vie (both trainer et son pokémon)
        {
            bool UserPkmPrioritaire;


            while (UserTrainer.EstEnVie() && OpponentTrainer.EstEnVie())
            {
                //UserPkmPrioritaire = true;
                while (UserPokemon.EstEnVie && OpponentPokemon.EstEnVie)
                {
                    //Système de tours entre pkmns ici
                    AfficherMenuAttaques();                        //On va commencer par savoir comment choisir une attaque, après on fera un menu pour fight/bag/pokemons/run

                    if (UserPokemon.Speed < OpponentPokemon.Speed) //le tour du joueur sauf si prouvé du contraire
                    {
                        UserPkmPrioritaire = false;
                    }
                    else
                    {
                        UserPkmPrioritaire = true;
                    }
                    //Important de garder dans la boucle, si la vitesse est changée par une attaque effect, et que l'adversaire ou le user devient plus rapide, il a droit de frapper deux fois



                    if (UserPkmPrioritaire)                                                                                         //Si le pokémon User est plus rapide
                    {
                        OpponentPokemon.Défendre(CalculPointsDamage(UserPokemon, OpponentPokemon, numéroAttaqueChoisie));           //fonctions temporaires, à modifier pour calculer les points de dommages avec la formule
                        UserPokemon.Défendre(CalculPointsDamage(OpponentPokemon, UserPokemon, OpponentPokemon.AttaqueAléatoire()));
                        UserPkmPrioritaire = false;                                                                                 //fin de son tour
                    }
                    else                                                                                                            //Si le pokémon adverse est le plus rapide
                    {
                        UserPokemon.Défendre(CalculPointsDamage(OpponentPokemon, UserPokemon, OpponentPokemon.AttaqueAléatoire())); // c'est le tour du pokémon adverse
                        OpponentPokemon.Défendre(CalculPointsDamage(UserPokemon, OpponentPokemon, numéroAttaqueChoisie));
                        UserPkmPrioritaire = true;
                    }
                }
                if (!OpponentPokemon.EstEnVie)//sorti de la boucle de combat: l'un des deux est mort
                {
                    //Message/animation/whatever, opponent has been defeated!
                    UserPokemon.GainExp(OpponentPokemon.Level * 10);

                    OpponentPokemon = LancerPokémon(0, OpponentTrainer); //Throw next pokemon
                }
                else
                {
                    //trainer pokemon fainted! Tu dois choisir un autre pokémon dans ton inventaire
                    //Ouvrir inventaire, sélectionner un index
                    int prochainPokemon = SélectionnerUnPokémonEnInventaire();

                    UserPokemon = LancerPokémon(prochainPokemon, UserTrainer);
                }
            }

            //Trainer has been defeated! ou Opponent has been defeated!
            if (UserTrainer.EstEnVie())
            {//le User a gagné
             //Changement de la toune?
             //Gagne du cash, ptit message genre "wow le ptit con m'a battu holyshit man"
            }
            else
            {//Le User a perdu
             //Donne du cash, ptit message genre "wow t'es ben faible ptit con"
             //User wrap au pokémon center (une méthode de téléportation dans le trainer pour le déplacer perhaps?)
            }

            //Le combat est fini
            EnCombat = false;      //Ou on pourrait changer le gamestate?
            base.Update(gameTime); //Utile?
        }