Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace Homework2_11
- {
- internal class Program
- {
- static void Main(string[] args)
- {
- const string CommandCommonAttack = "Common Attack";
- const string CommandFireball = "Fireball";
- const string CommandExplosion = "Explosion";
- const string CommandHealing = "Healing";
- Random random = new Random();
- int healthHero = 10;
- int maxHealthHero = 10;
- int manaHero = 30;
- int maxManaHero = 30;
- int damageAttackHero = 2;
- int damageFireBall = 10;
- int damageExplosion = 15;
- int healingHero = 5;
- int numberHealing = 3;
- int healthEnemy = 30;
- int minDamageEnemy = 1;
- int maxDamageEnemy = 5;
- int damageEnemy = random.Next(minDamageEnemy, maxDamageEnemy + 1);
- string desiredOperation = "";
- bool canAttackExplosion = false;
- while (healthHero > 0 && healthEnemy > 0)
- {
- Console.WriteLine($"\nЗдоровья Героя: {healthHero}, Мана Героя {manaHero} здоровье Босса: {healthEnemy}");
- Console.WriteLine("\nВыберете необходимое действие:");
- Console.WriteLine($"{CommandCommonAttack} - Обычная атака.");
- Console.WriteLine($"{CommandFireball} - Oгненный шар.");
- Console.WriteLine($"{CommandExplosion} - Взрыв.");
- Console.WriteLine($"{CommandHealing} - Лечение.");
- Console.Write("\nВаш выбор: ");
- desiredOperation = Console.ReadLine();
- switch (desiredOperation)
- {
- case CommandCommonAttack:
- healthEnemy -= damageAttackHero;
- Console.Write($"\nГерой атаковал Босса нанеся ему {damageAttackHero} урона.");
- break;
- case CommandFireball:
- healthEnemy -= damageFireBall;
- Console.Write($"\nГерой атаковал Босса фаерболом нанеся ему {damageFireBall} урона.");
- manaHero -= damageFireBall;
- canAttackExplosion = true;
- break;
- case CommandExplosion:
- if (canAttackExplosion && manaHero >= damageFireBall)
- {
- healthEnemy -= damageExplosion;
- Console.Write($"\nГерой использовал взрыв на Боссе после атаки фаерболом нанеся ему {damageExplosion} урона.");
- canAttackExplosion = false;
- }
- break;
- case CommandHealing:
- if (numberHealing > 0)
- {
- healthHero += healingHero;
- manaHero += healingHero;
- Console.Write($"\nГерой восстанавливает здоровье на {healingHero} и ману на {healingHero}.");
- numberHealing--;
- }
- if (healthHero > maxHealthHero)
- {
- healthHero = maxHealthHero;
- }
- if (manaHero > maxManaHero)
- {
- manaHero = maxManaHero;
- }
- break;
- default:
- Console.WriteLine($"\nНеправильная команда, герой пропускает ход.");
- break;
- }
- if (healthHero > 0)
- {
- healthHero -= damageEnemy;
- Console.WriteLine($"\nБосс атаковал Героя нанеся ему {damageEnemy} урона.");
- }
- }
- if (healthHero <= 0 && healthEnemy <= 0)
- {
- Console.WriteLine($"\nНичья Герой и Босс погибли от атaк друг друга.");
- }
- else if (healthHero <= 0)
- {
- Console.WriteLine($"\nГерой погиб от атaки Босса.");
- }
- else
- {
- Console.WriteLine($"\nБосс погиб от атaки Героя.");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement