Advertisement
IvanOseledko

Homework19

Nov 13th, 2023 (edited)
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.25 KB | None | 0 0
  1. using System;
  2.  
  3. namespace Hw19
  4. {
  5.     class Program
  6.     {
  7.         static void Main()
  8.         {
  9.             const int CommandUseRisingHeatSpellDamage = 1;
  10.             const int CommandUseFlamingTigerSpellDamage = 2;
  11.             const int CommandUsePurgatorySpellDamage = 3;
  12.             const int CommandUseBurningUniverseSpell = 4;
  13.  
  14.             int selectingMenuItem;
  15.  
  16.             int akazaHealth = 1100;
  17.             int akazaDamage = 70;
  18.  
  19.             int rengokuHealth = 700;
  20.             int halfOfRengokuHealth = 350;
  21.             int risingHeatSpellDamage = 100;
  22.             int flamingTigerSpellDamage = 100;
  23.             int purgatorySpellDamage = 150;
  24.             int burningUniverseSpell = 250;
  25.  
  26.             bool risingHeatSpellDamageIsUsed = false;
  27.  
  28.             Console.WriteLine("Вы - Кедзиро Ренгоку, столп пламени, истребитель демонов. Сегодня Вам предстоит сразиться с Аказой - демоном двенадцати лун, занимающим позицию третьей высшей луны. ");
  29.             Console.WriteLine("В Вашем арсенале есть каты истребителя, которые помогут Вам одолеть демона. Эти каты представлены ниже:\n");
  30.  
  31.             while (akazaHealth > 0 && rengokuHealth > 0)
  32.             {
  33.                 ConsoleColor defaultColor = Console.BackgroundColor;
  34.  
  35.                 Console.WriteLine($"{CommandUseRisingHeatSpellDamage} - Восходящий жар. Ренгоку наносит молниеносный восходящий удар клинком снизу вверх, нанося демону {risingHeatSpellDamage} единиц урона.\n{CommandUseFlamingTigerSpellDamage} - Пламенный Тигр. Ренгоку делает скоростной рывок, нанося серию ударов клинком, и снимает демону {flamingTigerSpellDamage} единиц здоровья.");
  36.                 Console.WriteLine($"{CommandUsePurgatorySpellDamage} - Чистилище. Ренгоку совершает молниеносный рывок в сторону соперника и по достижении цели рубит ее сильнейшим ударом раскаленного клинка, нанося {purgatorySpellDamage} единиц урона. Эта ката может быть применена только после использования каты Восходящий жар.\n{CommandUseBurningUniverseSpell} - Пылающее мироздание. Реногоку уохдит в защиту и восстанавливает себе {burningUniverseSpell} единиц здоровья. Ката может быть использована в том случае, если у Ренгоку осталось меньше половины здоровья.\n");
  37.  
  38.                 Console.BackgroundColor = ConsoleColor.DarkYellow;
  39.                 Console.WriteLine($"\nЗдоровье Ренгоку: {rengokuHealth}.");
  40.                 Console.BackgroundColor = ConsoleColor.DarkBlue;
  41.                 Console.WriteLine($"Здоровье Аказы: {akazaHealth}.\n");
  42.                 Console.BackgroundColor = defaultColor;
  43.  
  44.                 Console.Write("Выберите нужную кату: ");
  45.                 selectingMenuItem = Convert.ToInt32(Console.ReadLine());
  46.                
  47.                 switch (selectingMenuItem)
  48.                 {
  49.                     case CommandUseRisingHeatSpellDamage:
  50.                         akazaHealth -= risingHeatSpellDamage;
  51.                         rengokuHealth -= akazaDamage;
  52.                         risingHeatSpellDamageIsUsed = true;
  53.                         break;
  54.  
  55.                     case CommandUseFlamingTigerSpellDamage:
  56.                         akazaHealth -= flamingTigerSpellDamage;
  57.                         rengokuHealth -= akazaDamage;
  58.                         break;
  59.  
  60.                     case CommandUsePurgatorySpellDamage:
  61.                         if (risingHeatSpellDamageIsUsed == true)
  62.                         {
  63.                             akazaHealth -= purgatorySpellDamage;
  64.                             rengokuHealth -= akazaDamage;
  65.                         }
  66.                         else
  67.                         {
  68.                             Console.WriteLine("Этот прием не может быть использован в данный момент, поскольку вы не применяли кату Восходящий жар.");
  69.                         }
  70.                         break;
  71.  
  72.                     case CommandUseBurningUniverseSpell:
  73.                         if (rengokuHealth <= halfOfRengokuHealth)
  74.                         {
  75.                             rengokuHealth += burningUniverseSpell;
  76.                         }
  77.                         else
  78.                         {
  79.                             Console.WriteLine("Вы не можете использовать данную кату, поскольку у Ренгоку больше половины здоровья.");
  80.                         }
  81.                         break;
  82.                      
  83.                     default:
  84.                         Console.WriteLine("Такой каты нет.");
  85.                         break;
  86.                 }
  87.                
  88.                 Console.ReadKey();
  89.                 Console.Clear();
  90.             }
  91.  
  92.             if (rengokuHealth <= 0 && akazaHealth <= 0)
  93.             {
  94.                 Console.BackgroundColor = ConsoleColor.DarkGray;
  95.                 Console.WriteLine("В этом поединке нет победителей.");
  96.                 Console.BackgroundColor = default;
  97.             }
  98.             else if (akazaHealth <= 0)
  99.             {
  100.                 Console.BackgroundColor = ConsoleColor.DarkRed;
  101.                 Console.WriteLine("Ренгоку победил.");
  102.                 Console.BackgroundColor = default;
  103.             }
  104.             else
  105.             {
  106.                 Console.BackgroundColor = ConsoleColor.DarkBlue;
  107.                 Console.WriteLine("Ренгоку пал.");
  108.                 Console.BackgroundColor = default;
  109.             }
  110.         }
  111.     }
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement