Example #1
0
        static void Fight(PlayerMage player, EnemyMage enemy)
        {
            // while the battle is still going. while no one has died
            bool battleOn = true;

            while (battleOn)
            {
                // display current situation of stats
                // ask what the player wants to do
                int playerChose = PlayerChose(player, enemy);
                Console.Clear();
                //Console.ReadLine();
                if (playerChose == 1)
                {
                    Console.WriteLine(player.name + " hits " + enemy.name + " for " + player.attackPower + " damage!");
                    enemy.ChangeDefense(-player.attackPower);
                    Thread.Sleep(2000);
                    Console.Clear();
                    //Console.ReadLine();
                }
                else if (playerChose == 2)
                {
                    Console.WriteLine(player.name + " heals for " + player.healAmount);
                    player.Heal();
                    Console.WriteLine("Your health is now at " + player.defenseNumber);
                    Thread.Sleep(2500);
                }
                // this else if statement will only run once.  thanks to some code in the playerChose method
                else if (playerChose == 3)
                {
                    player.Shield();
                    Console.WriteLine(player.name + " has used the one time shield for " + player.defenseNumber);
                    Console.WriteLine("Your health is now at " + player.defenseNumber);
                    Thread.Sleep(2500);
                    Console.Clear();
                }
                if (enemy.defenseNumber <= 0)
                {
                    battleOn = false;
                    Console.WriteLine(enemy.name + " has been defeated!");
                }
            }
        }