Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace CSLightFirst
- {
- class Program
- {
- static void Main()
- {
- Random rand = new Random();
- float playerHealth = rand.Next(100, 150);
- float playerDamage = rand.Next(80, 100);
- float playerArmor = rand.Next(30, 40);
- float bossHealth = rand.Next(500, 550);
- float bossDamage = rand.Next(100, 120);
- float bossArmor = rand.Next(60, 70);
- int moveCountToStun = 0;
- int moveBossInStun = 0;
- string lastSpell = "";
- Console.WriteLine("Пришло время расправиться с Вашим главным врагом\n" +
- "Действуйте мудро, и тогда всё получится. Удачи!\n");
- while (playerHealth > 0 && bossHealth > 0)
- {
- Console.WriteLine($"У босса {bossHealth} HP, {bossDamage} damage, {bossArmor} armor\n" +
- $"У Вас {playerHealth} HP, {playerDamage} damage, {playerArmor} armor\n\n" +
- "Какое заклинание Вы хотели бы использовать? (Продолжительность заклинаний - 1 ход)\n" +
- "1 - Пылающий шар (Урон от ваших атак увеличивается на 10%, " +
- "а защита врага уменьшается на 20%)\n" +
- "2 - Оглушение (Заставляет врага пропустить 2 хода (можно использовать раз в 3 хода))\n" +
- "3 - Огненная буря (Наносит 2-кратный урон, " +
- "но только если предыдущее заклинание было - \"Пылающий шар\")\n" +
- "4 - Последний шанс (Если у вас осталось менее 10 HP, " +
- "с вероятностью 40% вы убьете босса, иначе вы умрете)\n");
- switch (Console.ReadLine())
- {
- case "1":
- bossHealth -= playerDamage * 1.1f * (bossArmor * 1.2f / 100);
- lastSpell = "1";
- if (moveCountToStun > 0)
- moveCountToStun--;
- break;
- case "2":
- if (moveCountToStun == 0)
- {
- moveBossInStun = 2;
- lastSpell = "2";
- moveCountToStun = 2;
- }
- break;
- case "3":
- if (lastSpell == "1")
- {
- bossHealth -= playerDamage * 2 * (bossArmor / 100);
- lastSpell = "3";
- if (moveCountToStun > 0)
- moveCountToStun--;
- }
- break;
- case "4":
- if (playerHealth < 10)
- {
- int temp = rand.Next(1, 101);
- if (temp > 0 && temp < 41)
- bossHealth = 0;
- else playerHealth = 0;
- }
- break;
- default:
- Console.WriteLine("Введено неверное заклинание, босс атакует");
- if (moveCountToStun > 0)
- moveCountToStun--;
- break;
- }
- if (moveBossInStun-- > 0)
- continue;
- if (bossHealth > 0)
- playerHealth -= bossDamage * (playerArmor / 100);
- }
- if (bossHealth <= 0 && playerHealth <= 0)
- Console.WriteLine("Вы победили босса ценою своей жизни...");
- else if (bossHealth <= 0)
- Console.WriteLine("Поздравляем! Мир спасен!");
- else if (playerHealth <= 0)
- Console.WriteLine("Вам не удалось победить в этом сражении... Увы...");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement