Advertisement
JohnJuly

Homework29.1

Jan 19th, 2024
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.30 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace _29
  8. {
  9.     internal class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             Console.WriteLine("Вы в меню отрисовки Health bar!!!");
  14.             Console.WriteLine("Введите на сколько процентов отрисовать healthbar: ");
  15.  
  16.             float userInput = Convert.ToSingle(Console.ReadLine());
  17.            
  18.             DrawHealthBar(userInput);
  19.         }
  20.         static void DrawHealthBar(float userInput)
  21.         {
  22.             float emptyBarInPercent = 0;
  23.             float maxValueHealthBar = 10;
  24.             float fullBarInPercent = 100;
  25.             float userInputInPercent = (float)Math.Round((maxValueHealthBar / fullBarInPercent) * userInput);
  26.  
  27.             Console.WriteLine("Введите позицию отрисовки по оси X");
  28.             int positionHealthBarX = Convert.ToInt32(Console.ReadLine());
  29.  
  30.             Console.WriteLine("Введите позицию отрисовки по оси Y");
  31.             int positionHealthBarY = Convert.ToInt32(Console.ReadLine());
  32.  
  33.             string bar = "";
  34.             char fillSymbol = '#';
  35.             char emptySymbol = '_';
  36.             char openBracket = '[';
  37.             char closeBracket = ']';
  38.  
  39.             if (userInput >= emptyBarInPercent && userInput <= fullBarInPercent)
  40.             {
  41.                 Console.SetCursorPosition(positionHealthBarX, positionHealthBarY);
  42.                 Console.Write(openBracket);
  43.  
  44.                 FillPartHealthBar(fillSymbol,emptyBarInPercent, userInputInPercent);
  45.                 FillPartHealthBar(emptySymbol,userInputInPercent,maxValueHealthBar);
  46.  
  47.                 Console.WriteLine(bar + closeBracket);
  48.             }
  49.             else
  50.             {
  51.                 Console.WriteLine("Введено значение выходящее за пределы Healthbar!");
  52.             }
  53.         }
  54.  
  55.         static void FillPartHealthBar(char symbol,float minValue, float value)
  56.         {
  57.             string bar = "";
  58.  
  59.             for (float i = minValue; i < value; i++)
  60.             {
  61.                 bar += symbol;
  62.             }
  63.  
  64.             Console.Write(bar);
  65.         }
  66.     }
  67. }
  68.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement