Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- namespace Homework19
- {
- internal class Program
- {
- static void Main(string[] args)
- {
- const string SpellFireball = "1";
- const string SummoningSpirit = "2";
- const string BananaPeelToss = "3";
- const string DodgeAttack = "4";
- Random random = new Random();
- int minPlayerHealth = 1900;
- int maxPlayerHealth = 2500;
- int minBossHealth = 2000;
- int maxBossHealth = 4300;
- int minBossDamage = 10;
- int maxBossDamage = 30;
- int minSpiritDamage = 50;
- int maxSpiritDamage = 100;
- int minSpiritHealth = 500;
- int maxSpiritHealth = 700;
- int playerHealth = random.Next(minPlayerHealth, maxPlayerHealth);
- int bossHealth = random.Next(minBossHealth, maxBossHealth);
- int spiritHealth = random.Next(minSpiritHealth, maxSpiritHealth);
- int bossDamage = random.Next(minBossDamage, maxBossDamage);
- int spiritDamage = random.Next(minSpiritDamage, maxSpiritDamage);
- int minFireballDamage = 50;
- int maxFireballDamage = 75;
- int fireballDamage = random.Next(minFireballDamage, maxFireballDamage);
- int minBurnDamage = 20;
- int maxBurnDamage = 45;
- int burnDamage = random.Next(minBurnDamage, maxBurnDamage);
- int minFallBossDamage = 300;
- int maxFallBossDamage = 350;
- int fallBossDamage = random.Next(minFallBossDamage, maxFallBossDamage);
- int numberTimeEffectActive = 3;
- int notDamage = 0;
- bool isFireballActive = false;
- bool isDodgeActive = false;
- bool isSpiritActive = false;
- while (playerHealth > 0 && bossHealth > 0)
- {
- Console.WriteLine($"Здоровье героя{playerHealth} , здоровье монстра {bossHealth}");
- Console.WriteLine("-------------------------------------------------------------");
- Console.WriteLine("На вас напал монстр, надо драться! Выберите заклинаие чтобы дать ему отпор.");
- Console.WriteLine($"{SpellFireball} - наносит урон огнем, следующие {numberTimeEffectActive} хода, добавляет урон от ожога.");
- Console.WriteLine($"{SummoningSpirit} - призвать духа который будет биться на вашей стороне");
- Console.WriteLine($"{BananaPeelToss} - бросок кожуры банана под ноги, монстр поскальзывается, бьется головой и получает урон.");
- Console.WriteLine($"{DodgeAttack} - увернуться от следующей атаки.");
- string userInput = Console.ReadLine();
- Console.Clear();
- switch (userInput)
- {
- case SpellFireball:
- bossHealth -= fireballDamage;
- isFireballActive = true;
- Console.WriteLine($"Урон от огня {fireballDamage}");
- break;
- case SummoningSpirit:
- isSpiritActive = true;
- break;
- case BananaPeelToss:
- bossHealth -= fallBossDamage;
- Console.WriteLine($"Урон от падения {fallBossDamage}");
- break;
- case DodgeAttack:
- isDodgeActive = true;
- break;
- }
- if (isFireballActive && numberTimeEffectActive > 0)
- {
- bossHealth -= burnDamage;
- numberTimeEffectActive--;
- Console.WriteLine($"Урон от ожога{burnDamage}");
- }
- else if (numberTimeEffectActive == 0)
- {
- isFireballActive = false;
- }
- if (spiritHealth >= 0 && isSpiritActive)
- {
- spiritHealth -= bossDamage;
- bossHealth -= spiritDamage;
- Console.WriteLine($"Здоровья духа {spiritHealth}/ Урон духа {spiritDamage}");
- }
- else if (spiritHealth <= 0)
- {
- Console.WriteLine("Дух побежден!!!");
- isSpiritActive = false;
- playerHealth -= bossDamage;
- }
- if (isDodgeActive)
- {
- Console.WriteLine($"Монстр промахнулся, вы получили {notDamage}");
- isDodgeActive = false;
- }
- else if (isDodgeActive == false && isSpiritActive == false)
- {
- playerHealth -= bossDamage;
- }
- }
- if (bossHealth <= 0 && playerHealth <= 0)
- {
- Console.WriteLine("Ничья!");
- }
- else if (bossHealth <= 0)
- {
- Console.WriteLine("Вы победили. Монстр повержен!!!");
- }
- else
- {
- Console.WriteLine("Монстр убил вас!");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement