Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace CSLight
- {
- internal class Program
- {
- static void Main(string[] args)
- {
- const string CommandPlayerHit = "1";
- const string CommandPlayerFireball = "2";
- const string CommandPlayerExplosion = "3";
- const string CommandPlayerHealPotion = "4";
- Random random = new Random();
- int playerHealth;
- int playerHealthMax = 600;
- int playerMana;
- int playerManaMax = 100;
- int playerManaRegen = 10;
- int playerHitDamage = 50;
- int playerFireballDamage = 10;
- int playerExplosionDamage = 220;
- int playerExplosionTrueDamage;
- int playerHealPotion = 350;
- int playerManaPorion = 100;
- int playerHealPotionCount = 4;
- int playerFireballsCount = 0;
- int playerFireballPrice = 40;
- int playerFireballCanUse = 1;
- int bossHealth = 1000;
- int bossDamageMax = 151;
- int bossDamageMin = 75;
- int bossDamage;
- bool isBattleActive = true;
- string userInput;
- playerHealth = playerHealthMax;
- playerMana = playerManaMax;
- while (isBattleActive)
- {
- Console.Clear();
- Console.WriteLine($"Ваши жизни: {playerHealth}\n" +
- $"Ваша мана: {playerMana}\n" +
- $"Зелий исцеления: {playerHealPotionCount}\n" +
- $"Фаерболов на локации: {playerFireballsCount}");
- Console.SetCursorPosition(30, 0);
- Console.WriteLine($"Жизни босса: {bossHealth}");
- Console.SetCursorPosition(0, 5);
- Console.WriteLine($"Выберите способность:\n" +
- $"{CommandPlayerHit}.Удар (нанести {playerHitDamage} урона)\n" +
- $"{CommandPlayerFireball}.Фаерболл (нанести {playerFireballDamage} урона, + {playerFireballCanUse} фаербол на локации)(Цена: {playerFireballPrice} маны)\n" +
- $"{CommandPlayerExplosion}.Взрыв фаерболлов (за каждый фаерболл на локации нанаести {playerExplosionDamage} урона ({playerExplosionDamage * playerFireballsCount}))\n" +
- $"{CommandPlayerHealPotion}.Выпить зелье (восстановить {playerHealPotion} здоровья и {playerManaPorion} маны)");
- userInput = Console.ReadLine();
- bossDamage = random.Next(bossDamageMin, bossDamageMax);
- playerHealth -= bossDamage;
- playerExplosionTrueDamage = playerExplosionDamage * playerFireballsCount;
- Console.Clear();
- switch (userInput)
- {
- case CommandPlayerHit:
- bossHealth -= playerHitDamage;
- Console.WriteLine($"Вы нанесли боссу: {playerHitDamage} урона.");
- break;
- case CommandPlayerFireball:
- if (playerMana < playerFireballPrice)
- {
- Console.WriteLine("У вас не хватает маны");
- }
- else
- {
- bossHealth -= playerFireballDamage;
- playerFireballsCount++;
- playerMana -= playerFireballPrice;
- Console.WriteLine($"Вы нанесли боссу: {playerFireballDamage} урона.");
- }
- break;
- case CommandPlayerExplosion:
- if (playerFireballsCount > 0)
- {
- bossHealth -= playerExplosionTrueDamage;
- Console.WriteLine($"Вы нанесли боссу: {playerExplosionTrueDamage} урона");
- playerFireballsCount = 0;
- }
- else
- {
- Console.WriteLine("У вас нет фаерболлов на локации(");
- }
- break;
- case CommandPlayerHealPotion:
- if (playerHealPotionCount <= 0)
- {
- Console.WriteLine("У вас нет зелья");
- }
- else
- {
- if (playerHealth + playerHealPotion >= playerHealthMax)
- {
- playerHealth = playerHealthMax;
- }
- else
- {
- playerHealth += playerHealPotion;
- }
- if (playerMana + playerManaPorion >= playerManaMax)
- {
- playerMana = playerManaMax;
- }
- else
- {
- playerMana += playerManaPorion;
- }
- playerHealPotionCount--;
- Console.WriteLine("Вы принимаете зелье исциления");
- }
- break;
- default:
- Console.WriteLine("Вы промахнулись!");
- break;
- }
- Console.WriteLine($"Вам нанесено: {bossDamage} урона");
- Console.ReadLine();
- if (playerMana + playerManaRegen >= playerManaMax)
- {
- playerMana = playerManaMax;
- }
- else
- {
- playerMana += playerManaRegen;
- }
- if (playerHealth <= 0 || bossHealth <= 0)
- {
- isBattleActive = false;
- }
- }
- Console.Clear();
- if (playerHealth <= 0 && bossHealth <= 0)
- {
- Console.WriteLine("Вы оба погибли");
- }
- else if (playerHealth <= 0)
- {
- Console.WriteLine("Вы погибли");
- }
- else
- {
- Console.WriteLine("Вы победили");
- }
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement