示例#1
0
        public void Start()
        {
            var lastMonster    = Monsters.Last();
            var secondMonster  = Monsters.Skip(1).First();
            var lowHPMonster   = Monsters.Where(p => p.HP < 20).First();
            var highStrMonster = Monsters.Where(p => p.Strength >= 11).First();
            var randomMonster  = Monsters.ElementAt(new Random().Next(0, Monsters.Count()));

            if (Monster == null)
            {
                Monster = randomMonster;
            }
            Console.WriteLine();
            Console.WriteLine("**************** BATTLE ****************");
            Console.WriteLine("You've encountered a " + Monster.Name + "! ");
            while (Hero.HP > 0 && Monster.HP > 0)
            {
                Console.WriteLine($"[{Monster.Name}] STR: {Monster.Strength} | DEF: {Monster.Defense} | HP: {Monster.HP} / {Monster.OriginalHP} | SPD: {Monster.Speed}");
                Console.WriteLine("What will you do?");
                Console.WriteLine("1. Fight *");
                if (Hero.Speed > Monster.Speed)
                {
                    Console.WriteLine("2. Flee");
                }
                var input = Console.ReadLine();
                if (input == "1" || input == "")
                {
                    this.HeroTurn();
                }
                else if (Hero.Speed > Monster.Speed && input == "2")
                {
                    Flee();
                    return;
                }
                else
                {
                    Console.WriteLine("" +
                                      "Unknown command!");
                }
            }
        }