Example #1
0
        public void Attaquer(Soldat ennemi)
        {
            // Si du même camp, on ne fait rien
            if (Camp == ennemi.Camp)
            {
                return;
            }

            if (Camp == Camp.Empire)
            {
                Console.WriteLine("Traitor!");
                Console.WriteLine($"Le soldat {Matricule} attaque le rebelle {ennemi.Matricule} et lui inflige {Degats} de dégats.");
                Console.ResetColor();
            }
            else
            {
                Console.WriteLine("Pour la princesse Organa!");
                Console.WriteLine($"Le rebelle {Matricule} attaque le soldat {ennemi.Matricule} et lui inflige {Degats} de dégats.");
                Console.ResetColor();
            }

            ennemi.Sante -= Degats;

            if (ennemi.IsDead(ennemi.Sante))
            {
                Console.WriteLine("Le soldat ennemi est mort \r\n");
            }
            else
            {
                Console.WriteLine($"Il reste {ennemi.Sante} de santé au soldat ennemi. \r\n");
            }
        }
Example #2
0
        public void LaunchBattle()
        {
            string favori = GetFavori(RebellesList, EmpireList);

            listeSoldats = new List <Soldat>();
            listeSoldats.AddRange(RebellesList);
            listeSoldats.AddRange(EmpireList);

            if (Enum.TryParse(favori, out enumFavori) && enumFavori == Camp.Empire)
            {
                hero = PickHero(EmpireList);
                Console.WriteLine($"L'empire commence la bataille et le soldat {hero.Matricule} est le héros ! \r\n");
                EmpireList[0].Attaquer(RebellesList[0]);
            }
            else
            {
                hero = PickHero(RebellesList);
                Console.WriteLine($"Les rebelles commencent la bataille et le rebelle {hero.Matricule} est le favori ! \r\n");
                RebellesList[0].Attaquer(EmpireList[0]);
            }

            do
            {
                if (EmpireList.Count <= 0 || RebellesList.Count <= 0)
                {
                    break;
                }

                Soldat soldatEmpire  = EmpireList[rnd.Next(0, EmpireList.Count - 1)];
                Soldat soldatRebelle = RebellesList[rnd.Next(0, RebellesList.Count - 1)];

                listeSoldats[rnd.Next(0, 100)].Attaquer(listeSoldats[rnd.Next(0, 100)]);

                if (soldatEmpire.IsDead(soldatEmpire.Sante))
                {
                    EmpireList.Remove(soldatEmpire);
                }
                if (soldatRebelle.IsDead(soldatRebelle.Sante))
                {
                    RebellesList.Remove(soldatRebelle);
                }
            } while (true);
        }