Advertisement
RedFlys

HomeWork14. Boss fight

Aug 23rd, 2020
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 12.37 KB | None | 0 0
  1. using System;
  2.  
  3. namespace ConsoleApp14.BossFight
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             string name;
  10.             int newGame = 0;
  11.             int userChange;
  12.  
  13.             int userHP = 500;
  14.             int fix = 15;
  15.             int cycle = 20;
  16.             int keybooardBump = 50;
  17.             int heal = 200;
  18.             int light = 40;
  19.             int courses = 2000;
  20.             int firstAndKit = 4;
  21.  
  22.             int bossHP = 1000;
  23.             int blindness = 20;
  24.             int uncycle = 50;
  25.             int superCycle = 10;
  26.             int gas = 450;
  27.             int blind = 1;
  28.             int minion = 0;
  29.             int minionAttack;
  30.             int antiCicle = 1;
  31.  
  32.             int minNumber = 0, maxNumber = 101;
  33.             int number, changeAttack;
  34.  
  35.             Random random = new Random();
  36.  
  37.             Console.WriteLine("Введите своё имя:");
  38.             name = Console.ReadLine();
  39.             Console.Clear();
  40.  
  41.             Console.Write($"Приветствую тебя, {name}, в рядах полиции кода. Сегодня у тебя рейд на говнокодера, но помни, что это опытный говнокодер. ");
  42.             Console.Write("От его кода закровоточили глаза у многих наших товарищей. ");
  43.             Console.Write("Я дам тебе досье на него. Прочти перед тем, как отправиться за ним.\n\n");
  44.  
  45.             do
  46.             {
  47.                 Console.WriteLine("1. Начать рейд \n2. Прочесть досье \n3. Мои способности\n");
  48.                 userChange = Convert.ToInt32(Console.ReadLine());
  49.  
  50.                 if (userChange == 1)
  51.                 {
  52.                     Console.WriteLine("Отправляемся");
  53.                     newGame++;
  54.                     Console.ReadKey();
  55.                     Console.Clear();
  56.                     break;
  57.                 }
  58.                 else if (userChange == 2)
  59.                 {
  60.                     Console.WriteLine("Говнокодер, в определённых кругах известен, как UserXXX123.");
  61.                     Console.WriteLine("Вес: 451кг.");
  62.                     Console.WriteLine("Рост: 175см.");
  63.                     Console.WriteLine("Уровень опасности: высокий.\n");
  64.                     Console.WriteLine("Обладает следующими способностями: \n");
  65.                     Console.Write($"    1. Ослепление - показывает свой самый кривой код, из-за чего начинает идти кровь из глаз, а цвета начинают путаться. ");
  66.                     Console.Write($"Наносит {blindness} урона, меняет цвет в консоли.");
  67.                     Console.WriteLine($"    2. Антицикл - повторяющиеся строчки кода заваливают противника. Наносит {uncycle} урона.");
  68.                     Console.WriteLine($"    3. Суперкурс - создаёт одного ученика, который каждый ход будет наносить {superCycle} урона. ");
  69.                     Console.Write($"    4. Газы - так как говнокодер питается только шаурмой, выпускает сильные газы, убивающие всё в округе. ");
  70.                     Console.Write($"Наносит {gas} урона.\n");
  71.                     Console.WriteLine("\nНажмите любую клавишу, что бы вернуться");
  72.                     Console.ReadKey();
  73.                     Console.Clear();
  74.                 }
  75.                 else if (userChange == 3)
  76.                 {
  77.                     Console.WriteLine("Вы обладаете следующими способностями: \n");
  78.                     Console.WriteLine($"    1. Исправить - исправляет вражеский код. Наносит противнику {fix} урона и восстанавливает пользователю {fix} здоровья.");
  79.                     Console.WriteLine($"    2. Цикл - создаёт цикл, наносящий {cycle}. Если используется после антицикла противника - увеличивает урон в 3 раза.");
  80.                     Console.WriteLine($"    3. Удар клавиатурой - бьёте аппонента клавиатурой в лицо. Наносит {keybooardBump} урона.");
  81.                     Console.WriteLine($"    4. Аптечка - восстанавливает пользователю {heal} здоровья. Доступно за бой {firstAndKit} использования.");
  82.                     Console.Write($"    5. Просветление - появляется, если противник использовал ослепление. Протираете глаза спиртом и исправляете код противника. ");
  83.                     Console.Write($"Наносит противнику {light} урона и восстанавливает пользователю {light} здоровья. \n");
  84.                     Console.Write($"    6. Курсы - появляется, если у пользователя осталось меньше 10 здоровья. Отправляет противника на курсы Романа Сакутина.");
  85.                     Console.Write($"Наносит противнику {courses} урона.\n");
  86.                     Console.WriteLine("\nНажмите любую клавишу, что бы вернуться");
  87.                     Console.ReadKey();
  88.                     Console.Clear();
  89.                 }
  90.                 else
  91.                 {
  92.                     Console.WriteLine("Выберите корректный номер команды.");
  93.                     Console.ReadKey();
  94.                     Console.Clear();
  95.                 }
  96.             }
  97.             while (newGame == 0);
  98.  
  99.             Console.WriteLine("Дом говнокодера окружён полицией. Вы готовитесь к штурму. \n3. \n2. \n1. \n \n Вы внутри.\n Он оказывает сопротивление:");
  100.  
  101.             do
  102.             {
  103.                 Console.WriteLine($"Ваше здоровье: {userHP}           Здоровье врага: {bossHP}");
  104.  
  105.                 if (blind == 2)
  106.                     Console.Write("\nВы ослеплены.");
  107.  
  108.                 Console.WriteLine("Ваш ход\n");
  109.                 Console.WriteLine("Выберите,как будете атаковать:");
  110.                 Console.WriteLine($"    1. Исправить. Наносит {fix} урона и восстанавливает {fix} здоровья.");
  111.                 Console.WriteLine($"    2. Цикл. Наносит {cycle} урона.");
  112.                 Console.WriteLine($"    3. Удар клавиатурой. Наносит {keybooardBump}.");
  113.                 Console.WriteLine($"    4. Аптечка. Восстанавливает {heal} здоровья. Ещё доступно {firstAndKit} использования.");
  114.                 if (blind == 2)
  115.                     Console.WriteLine($"    5. Просветление. Наносит противнику {light} урона и восстанавливает пользователю {light} здоровья. \n");
  116.                 if (userHP <= 10)
  117.                     Console.WriteLine($"    6. Курсы. Наносит противнику {courses} урона.\n");
  118.  
  119.                 while (true)
  120.                 {
  121.                     userChange = Convert.ToInt32(Console.ReadLine());
  122.  
  123.                     if (userChange == 1)
  124.                     {
  125.                         userHP += fix;
  126.                         if (userHP > 500)
  127.                             userHP = 500;
  128.                         bossHP -= fix;
  129.                         Console.WriteLine($"Вы вылечили себе {fix} и нанесли {fix}.");
  130.                         break;
  131.                     }
  132.                     if (userChange == 2)
  133.                     {
  134.                         bossHP -= cycle * antiCicle;
  135.                         Console.WriteLine($"Вы нанесли {cycle * antiCicle}.");
  136.                         break;
  137.                     }
  138.                     if (userChange == 3)
  139.                     {
  140.                         bossHP -= keybooardBump;
  141.                         Console.WriteLine($"Вы нанесли {keybooardBump}.");
  142.                         break;
  143.                     }
  144.                     if (userChange == 4)
  145.                     {
  146.                         if (firstAndKit > 0)
  147.                         {
  148.                             firstAndKit--;
  149.                             userHP += heal;
  150.                             if (userHP > 500)
  151.                                 userHP = 500;
  152.                             Console.WriteLine($"Вы вылечили себе {heal}.");
  153.                             break;
  154.                         }
  155.                         else
  156.                         {
  157.                             Console.WriteLine("К сожалению у вас закончились аптечки. Выберите другое действие.");
  158.                         }
  159.                     }
  160.                     if (userChange == 5 && blind == 2)
  161.                     {
  162.                         Console.ResetColor();
  163.                         blind = 1;
  164.                         userHP += light;
  165.                         if (userHP > 500)
  166.                             userHP = 500;
  167.                         bossHP -= light;
  168.                         Console.WriteLine($"Вы вылечили себе {light} и нанесли {light}.");
  169.                         break;
  170.                     }
  171.                     if (userChange == 6 && userHP <= 10)
  172.                     {
  173.                         bossHP -= courses;
  174.                         Console.WriteLine($"Вы нанесли {courses}.");
  175.                         break;
  176.                     }
  177.                     else
  178.                     {
  179.                         Console.WriteLine("Выберите корректное действие.");
  180.                     }
  181.                 }
  182.  
  183.                 if (bossHP <= 0)
  184.                     break;
  185.  
  186.                 number = random.Next(minNumber, maxNumber);
  187.  
  188.                 if (number >= 0 && number <= 20)
  189.                 {
  190.                     userHP -= blindness;
  191.                     Console.WriteLine($"Вам нанесли {blindness}.");
  192.                     blind = 2;
  193.                     Console.ForegroundColor = ConsoleColor.Red;
  194.                     Console.BackgroundColor = ConsoleColor.Yellow;
  195.  
  196.                 }
  197.                 else if (number > 20 && number <= 65)
  198.                 {
  199.                     userHP -= uncycle;
  200.                     Console.WriteLine($"Вам нанесли {uncycle}.");
  201.                 }
  202.                 else if (number > 65 && number <= 95)
  203.                 {
  204.                     minion++;
  205.                     Console.WriteLine("Противник обучил ученика.");
  206.                 }
  207.                 else if (number > 95 && number <= 100)
  208.                 {
  209.                     userHP -= gas;
  210.                     minion = 0;
  211.                     Console.WriteLine($"Вам нанесли {gas}.");
  212.                 }
  213.  
  214.                 if (minion > 0)
  215.                 {
  216.                     minionAttack = minion * superCycle;
  217.                     userHP = -minionAttack;
  218.                     Console.Write($"У соперника {minion} учеников. Они нанесли {minionAttack} урона.");
  219.                 }
  220.  
  221.                 if (userHP <= 0)
  222.                     break;
  223.  
  224.                 Console.ReadKey();
  225.                 Console.Clear();
  226.             }
  227.             while (userHP > 0 || bossHP > 0);
  228.  
  229.             if (bossHP <= 0 && userHP > 0)
  230.                 Console.WriteLine("Поздравляю, ты победил!");
  231.             else
  232.                 Console.WriteLine("Вы проиграли. Попробуйте ещё раз.");
  233.             Console.ReadKey();
  234.         }
  235.     }
  236. }
  237.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement