Exemple #1
0
 /// <summary>
 /// Piger une carte selon le tour.
 /// </summary>
 public void PigerCarte()
 {
     if (JoueurActifEst1)
     {
         if (Joueur1.DeckAJouer.NbCarteDeck == 0)
         {
             Joueur1.UtiliserRecyclage(LstUsineRecyclageJ1);
         }
         if (LstMainJ1.Count < 8)
         {
             LstMainJ1.Add(Joueur1.PigerCarte());
         }
     }
     else
     {
         if (Joueur2.DeckAJouer.NbCarteDeck == 0)
         {
             Joueur2.UtiliserRecyclage(LstUsineRecyclageJ2);
         }
         if (LstMainJ2.Count < 8)
         {
             LstMainJ2.Add(Joueur2.PigerCarte());
         }
     }
 }
Exemple #2
0
 public MoteurJeu(string joueur1, string joueur2)
 {
     Joueur1  = new Joueur1(joueur1);
     Joueur2  = new Joueur2(joueur2);
     plateau  = new Plateau();
     resolver = new Resolver();
 }
Exemple #3
0
 public MoteurJeu()
 {
     Joueur1  = new Joueur1();
     Joueur2  = new Joueur2();
     plateau  = new Plateau();
     resolver = new Resolver();
 }
Exemple #4
0
 /// <summary>
 /// Fonction qui attribu les ressources par rapport au niveau des ressources du joueur
 /// </summary>
 /// <param name="joueurUn"></param>
 public void AttribuerRessourceLevel()
 {
     if (JoueurActifEst1)
     {
         Joueur1.ModifierRessource(true, Joueur1.LevelRessource);
     }
     else
     {
         Joueur2.ModifierRessource(true, Joueur2.LevelRessource);
     }
 }
Exemple #5
0
 /// <summary>
 /// Determine quel joueur vient de mourir a la fin du match (ie. lequel a ses trois pokemon detruits). Il ne peut y avoir 2 joueurs morts.
 /// </summary>
 /// <returns>Le Joueur elimine</returns>
 public Joueur JoueurGagnant()
 {
     if (Joueur1.EstMort())
     {
         return(Joueur2);
     }
     else
     {
         return(Joueur1);
     }
 }
Exemple #6
0
 /// <summary>
 /// Fonction qui modifie les ressources
 /// </summary>
 /// <param name="joueurUn">Est-ce le joueur1?</param>
 /// <param name="addition">Est-ce une addition?</param>
 /// <param name="valeurs">Valeurs qui modifie les ressources</param>
 public void ModifierRessource(bool joueurUn, bool addition, Ressource valeurs)
 {
     if (joueurUn)
     {
         Joueur1.ModifierRessource(addition, valeurs);
     }
     else
     {
         Joueur2.ModifierRessource(addition, valeurs);
     }
 }
Exemple #7
0
 /// <summary>
 /// Brasse le deck du joueur selon le tour
 /// </summary>
 public void BrasserDeck()
 {
     if (JoueurActifEst1)
     {
         Joueur1.BrasserDeck();
     }
     else
     {
         Joueur2.BrasserDeck();
     }
 }
Exemple #8
0
 /// <summary>
 /// Brasse le deck du joueur choisi
 /// </summary>
 /// <param name="joueurUn">Affecte le joueur 1?</param>
 public void BrasserDeck(bool joueurUn)
 {
     if (joueurUn)
     {
         Joueur1.BrasserDeck();
     }
     else
     {
         Joueur2.BrasserDeck();
     }
 }
Exemple #9
0
 /// <summary>
 /// Pige une carte selon le joueur choisi.
 /// </summary>
 /// <param name="joueurUn">Affecte le joueur 1?</param>
 public void PigerCarte(bool joueurUn)
 {
     if (joueurUn)
     {
         LstMainJ1.Add(Joueur1.PigerCarte());
     }
     else
     {
         LstMainJ2.Add(Joueur2.PigerCarte());
     }
 }
Exemple #10
0
 public (bool, string) AiJeUnGagnant()
 {
     if (resolver.JoueurGagne(Joueur1.Symbole, plateau.Board))
     {
         return(true, Joueur1.ToString());
     }
     if (resolver.JoueurGagne(Joueur2.Symbole, plateau.Board))
     {
         return(true, Joueur2.ToString());
     }
     return(false, "");
 }
Exemple #11
0
 public bool JoueurEstMort(bool joueurUn)
 {
     if (joueurUn && Joueur1.EstMort())
     {
         return(true);
     }
     else if (Joueur2.EstMort())
     {
         return(true);
     }
     return(false);
 }
Exemple #12
0
        public static void Main(string[] args)
        {
            IJoueur joueur1, joueur2;

            while (true)
            {
                Console.WriteLine("Bienvenue dans puissance 4");
                Loger.WriteLine($"Partie lancer", "INFO");
                Console.WriteLine("Quel est le nom de joueur 1 ?");
                string joueur1Name = Console.ReadLine();
                Loger.WriteLine($"Non du joueur 1 est maintenant égal à : {joueur1Name}", "INFO");
                joueur1 = new Joueur1(joueur1Name);
                Console.WriteLine("Quel est le nom de joueur 2 ?");
                string joueur2Name = Console.ReadLine();
                Loger.WriteLine($"Non du joueur 2 est maintenant égal à : {joueur2Name}", "INFO");
                joueur2 = new Joueur2(joueur2Name);

                MoteurDeJeu moteur = new MoteurDeJeu(joueur1, joueur2);
                while (moteur.QuiAGagner() == string.Empty)
                {
                    //Afficher board
                    Console.WriteLine(moteur.Affichage());
                    // Affiche qui joue
                    Console.WriteLine($"{moteur.QuiJoue()} joue");
                    Console.WriteLine("Choisissez une colonne 1 à 7");
                    Loger.WriteLine($"{moteur.QuiJoue()} joue", "INFO");

                    //Joue
                    string numColonne = Console.ReadLine();
                    bool   verif      = IsNumeric(numColonne);
                    if (verif == true)
                    {
                        Loger.WriteLine($"Choix colonne numero {numColonne}", "INFO");
                        moteur.Jouer(int.Parse(numColonne));
                    }
                    else
                    {
                        Loger.WriteLine($"Le choix de la colonne n'est pas un nombre", "ERREUR");
                        break;
                    }
                }
                Console.WriteLine($"{moteur.QuiAGagner()} a gagné");
                Loger.WriteLine($"{moteur.QuiJoue()} a gagné", "INFO");

                Console.WriteLine("Voulez-vous rejouez ? (y/N)");
                if (Console.ReadLine().ToLowerInvariant() != "y")
                {
                    break;
                }
            }
        }
Exemple #13
0
        public void LancerMatch()
        {
            Pokemon ChoixPokemonJoueur1 = null;
            Pokemon ChoixPokemonJoueur2 = null;
            Combat  UnContreUn;

            // Tant que tous les joueurs ont au moins un pokemon vivant
            while (!Joueur1.EstMort() && !Joueur2.EstMort())
            {
                // Demandes de choix d'un pokemon si le pokemon precedent vient de mourir ou si debut du match
                // A part au premier tour, il n'y a pas lieu d'entrer dans les deux if
                if (ChoixPokemonJoueur1 == null || ChoixPokemonJoueur1.KO)
                {
                    ChoixPokemonJoueur1 = Joueur1.ChoisirPokemonActif();
                }
                if (ChoixPokemonJoueur2 == null || ChoixPokemonJoueur2.KO)
                {
                    ChoixPokemonJoueur2 = Joueur2.ChoisirPokemonActif();
                }

                if (Joueur1QuiCommence())
                {
                    UnContreUn = new Combat(ChoixPokemonJoueur1, ChoixPokemonJoueur2);
                }
                else
                {
                    UnContreUn = new Combat(ChoixPokemonJoueur2, ChoixPokemonJoueur1);
                }

                // Les combats peuvent commencer !
                UnContreUn.LancerCombat();
            }

            Joueur JoueurG = JoueurGagnant();

            if (JoueurG == Joueur1)
            {
                JoueurPerdant = Joueur2;
                Console.WriteLine("Le vainqueur est le joueur num {0}", Joueur1.Numero);
            }
            else
            {
                JoueurPerdant = Joueur1;
                Console.WriteLine("Le vainqueur est le joueur num {0}", Joueur2.Numero);
            }

            JoueurG.Soigner();
        }
Exemple #14
0
        /// <summary>
        /// LoadContent will be called once per game and is the place to load
        /// all of your content.
        /// </summary>
        protected override void LoadContent()
        {
            // Create a new SpriteBatch, which can be used to draw textures.
            spriteBatch     = new SpriteBatch(GraphicsDevice);
            Joueur1.Texture = new Texture2D(graphics.GraphicsDevice, 10, 60);
            Joueur1.SetColor(Color.White);

            Joueur2.Texture = new Texture2D(graphics.GraphicsDevice, 10, 60);
            Joueur2.SetColor(Color.White);
            Ball.Texture = new Texture2D(graphics.GraphicsDevice, 15, 15);
            Ball.SetColor(Color.White);
            Ball.Hidden = true;


            font = Content.Load <SpriteFont>("Font/File");
            // TODO: use this.Content to load your game content here
        }
Exemple #15
0
        /// <summary>
        /// This is called when the game should draw itself.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing values.</param>
        protected override void Draw(GameTime gameTime)
        {
            GraphicsDevice.Clear(Color.Black);
            Joueur1.Draw(spriteBatch);
            Joueur2.Draw(spriteBatch);
            Ball.Draw(spriteBatch);
            Basique.DrawLatence(spriteBatch, Latence, font, fontOrigin);

            if (!IsReady)
            {
                Basique.DrawMessage(spriteBatch, font, fontOrigin, gameTime, Text);
            }

            // TODO: Add your drawing code here

            base.Draw(gameTime);
        }
Exemple #16
0
        /// <summary>
        /// Allows the game to run logic such as updating the world,
        /// checking for collisions, gathering input, and playing audio.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing values.</param>
        protected override void Update(GameTime gameTime)
        {
            if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape))
            {
                Exit();
            }


            // TODO: Add your update logic here
            Joueur1.Move(Keyboard.GetState());

            if (Party == TypeParty.None)
            {
                Joueur1.CreateOrRejoindParty(Keyboard.GetState());
            }

            base.Update(gameTime);
        }
Exemple #17
0
        private void StartGame()
        {
            NetworkStream StreamJ1 = Joueur1.GetStream();
            NetworkStream StreamJ2 = Joueur2.GetStream();

            PosShips GrilleJ1;
            PosShips GrilleJ2;


            LogConsole.Log("Début Partie");

            ConnUtility.SerializeAndSend(StreamJ1, "Start");
            ConnUtility.SerializeAndSend(StreamJ2, "Start");

            StreamJ1.ReadTimeout = StreamJ2.ReadTimeout = 60000;
            try
            {
                LogConsole.Log("Lecture 1 ");
                GrilleJ1 = (PosShips)ConnUtility.ReadAndDeserialize(StreamJ1);
                LogConsole.Log("Lecture 2 ");
                GrilleJ2 = (PosShips)ConnUtility.ReadAndDeserialize(StreamJ2);
                LogConsole.Log("Tentative Lecture");
                LogConsole.Log(GrilleJ1.PPorteAvion.ToString());
                LogConsole.Log(GrilleJ2.PPorteAvion.ToString());
            }
            catch (Exception e)
            {
                LogConsole.Log("Erreur réception grille Erreur: " + e.Message);
            }



            /*recevoir tableau*/

            /*partir boucle Joueur1*/
            //jeu.Abort();
            while (true)
            {
                Thread.Sleep(500);
            }

            MatchMakingServeur.GameInstances.Remove(this);
        }
Exemple #18
0
        static void Main(string[] args)
        {
            IJoueur joueur1, joueur2;

            while (true)
            {
                Console.WriteLine("Bienvenu dans puissance 4");
                Console.WriteLine("Quel est le nom de joueur 1 ?");
                string joueur1Name = Console.ReadLine();
                joueur1 = new Joueur1(joueur1Name);
                Console.WriteLine("Quel est le nom de joueur 2 ?");
                string joueur2Name = Console.ReadLine();
                joueur2 = new Joueur2(joueur2Name);

                IMoteurDeJeu moteur       = new MoteurDeJeu(joueur1, joueur2);
                bool         jaiUnGagnant = false;
                string       nomGagnant   = string.Empty;
                while (!jaiUnGagnant)
                {
                    //Afficher board
                    Console.WriteLine(moteur.Affichage());
                    // Affiche qui joue
                    Console.WriteLine($"{moteur.QuiJoue()} joue");
                    Console.WriteLine("Choisissez une colonne 1 à 7");

                    //Joue
                    string numColonne = Console.ReadLine();
                    moteur.Jouer(int.Parse(numColonne));
                    (jaiUnGagnant, nomGagnant) = moteur.QuiAGagner();
                }
                Console.WriteLine(moteur.Affichage());
                Console.WriteLine($"{nomGagnant} a gagné");

                Console.WriteLine("Voulez-vous rejouez ? (y/N)");
                if (Console.ReadLine().ToLowerInvariant() != "y")
                {
                    break;
                }
            }
        }
        public void ReturnSymbolX()
        {
            Joueur1 joueur1 = new Joueur1();

            Assert.Equal('X', joueur1.Symbole);
        }
Exemple #20
0
 /// <summary>
 /// Brasse LES decks des joueurs
 /// </summary>
 public void BrasserDecks()
 {
     Joueur1.BrasserDeck();
     Joueur2.BrasserDeck();
 }
        public void ReturnName_WhenCreateWithName_AndCallToString()
        {
            Joueur1 joueur1 = new Joueur1("Name");

            Assert.Equal("Name", joueur1.ToString());
        }
Exemple #22
0
 /// <summary>
 /// Fonction qui dit au 2 joueurs de piger une carte.
 /// </summary>
 public void PigerCartes()
 {
     LstMainJ1.Add(Joueur1.PigerCarte());
     LstMainJ2.Add(Joueur2.PigerCarte());
 }
        public void ReturnJoueur1_WhenCallToString()
        {
            Joueur1 joueur1 = new Joueur1();

            Assert.Equal("Joueur 1", joueur1.ToString());
        }