Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace ConsoleApp
- {
- internal class Program
- {
- static void Main(string[] args)
- {
- const string RegularAttackCommand = "1";
- const string ScaleDamageCommand = "2";
- const string SpawnHelperCommand = "3";
- const string KillHelperCommand = "4";
- const string HealCommand = "5";
- int bossHealth = 400;
- int minBossDamage = 10;
- int maxBossDamage = 50;
- int maxPlayerHealth = 300;
- int playerHealth = maxPlayerHealth;
- int minPlayerDamage = 20;
- int maxPlayerDamage = 40;
- int missStepCount = 0;
- int scaleDamageSkill = 2;
- int missStepCountAffterScaleDamage = 3;
- int helperDamage = 10;
- int lossHealtAmounthAfterHelperSpawn = 50;
- int helperCount = 0;
- int killHelperSkillDamage = 50;
- int healAmount = 100;
- int missStepCountAffterHeal = 3;
- Random random = new Random();
- while (playerHealth > 0 && bossHealth > 0)
- {
- string userInput;
- if (missStepCount <= 0)
- {
- Console.WriteLine($"Выберите действие:" +
- $"\n{RegularAttackCommand} - обычная атака. Наносит {minPlayerDamage} - {maxPlayerDamage} урона;" +
- $"\n{ScaleDamageCommand} - увеличить урон в {scaleDamageSkill} раза и пропустить {missStepCountAffterScaleDamage} хода;" +
- $"\n{SpawnHelperCommand} - призвать рыцаря, который будет наносить {helperDamage} урона каждый ход и потерять {lossHealtAmounthAfterHelperSpawn} хп;" +
- $"\n{KillHelperCommand} - уничтожить рыцаря и нанести боссу {killHelperSkillDamage} урона" +
- $"\n{HealCommand} - восстановить {healAmount} хп и пропустить {missStepCountAffterHeal} ходов");
- userInput = Console.ReadLine();
- switch (userInput)
- {
- case RegularAttackCommand:
- int playerDamage = random.Next(minPlayerDamage, maxPlayerDamage);
- bossHealth -= playerDamage;
- break;
- case ScaleDamageCommand:
- missStepCount += missStepCountAffterScaleDamage;
- minPlayerDamage *= scaleDamageSkill;
- maxPlayerDamage *= scaleDamageSkill;
- break;
- case SpawnHelperCommand:
- helperCount++;
- playerHealth -= lossHealtAmounthAfterHelperSpawn;
- break;
- case KillHelperCommand:
- if (helperCount > 0)
- {
- helperCount--;
- bossHealth -= killHelperSkillDamage;
- }
- else
- {
- Console.WriteLine($"У вас нет рыцарей!\n");
- continue;
- }
- break;
- case HealCommand:
- playerHealth += healAmount;
- missStepCount += missStepCountAffterHeal;
- if (playerHealth > maxPlayerHealth)
- {
- playerHealth = maxPlayerHealth;
- }
- break;
- }
- }
- else
- {
- missStepCount--;
- }
- int bossDamage = random.Next(minBossDamage, maxBossDamage);
- playerHealth -= bossDamage;
- bossHealth -= helperCount * helperDamage;
- Console.WriteLine($"Ваше здоровье: {playerHealth}\nЗдоровье босса: {bossHealth}\n");
- }
- if (playerHealth <= 0 && bossHealth <= 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