Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.02 KB | None | 0 0
  1. using System;
  2.  
  3. namespace IMJunior
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             Player[] player = new Player[0];
  10.             bool isPlaying = true;
  11.             DataBase database = new DataBase(player);
  12.  
  13.             while (isPlaying)
  14.             {
  15.                 Console.Clear();
  16.                 DrawMenu();
  17.                 int chose = Convert.ToInt32(Console.ReadLine());
  18.  
  19.                 if (chose == 1)
  20.                 {
  21.                     Console.Clear();
  22.                     Console.Write("Введите имя: ");
  23.                     string name = Console.ReadLine();
  24.                     Console.Write("Введите уровень: ");
  25.                     int level = Convert.ToInt32(Console.ReadLine());
  26.  
  27.                     database.AddPlayer(name, level);
  28.                 }
  29.  
  30.                 else if (chose == 2)
  31.                 {
  32.                     Console.Clear();
  33.                     database.AllPlayersInfo();
  34.                     Console.SetCursorPosition(50, 0);
  35.                     Console.Write("Какого игрока удалить: ");
  36.                     int number = Convert.ToInt32(Console.ReadLine());
  37.  
  38.                     database.DeletePlayer(number);
  39.                 }
  40.  
  41.                 else if (chose == 3)
  42.                 {
  43.                     database.AllPlayersInfo();
  44.                     Console.SetCursorPosition(50, 0);
  45.                     Console.Write("Какого игрока забанить: ");
  46.                     int chose2 = Convert.ToInt32(Console.ReadLine());
  47.  
  48.                     if (chose2 - 1 >= 0 && chose2 - 1 <= player.Length)
  49.                     {
  50.                         database.BanAndUnban(true, "Игрок уже забанен!", chose2);
  51.                     }
  52.                     else
  53.                     {
  54.                         Console.Clear();
  55.                         Console.WriteLine("Неверный ввод!");
  56.                         Console.ReadLine();
  57.                     }
  58.                 }
  59.  
  60.                 else if (chose == 4)
  61.                 {
  62.                     database.AllPlayersInfo();
  63.                     Console.SetCursorPosition(50, 0);
  64.                     Console.Write("Какого игрока разбанить: ");
  65.                     int chose2 = Convert.ToInt32(Console.ReadLine());
  66.  
  67.                     if (chose2 - 1 >= 0 && chose2 - 1 <= player.Length)
  68.                     {
  69.                         database.BanAndUnban(false, "Игрок уже разбанен!", chose2);
  70.                     }
  71.                     else
  72.                     {
  73.                         Console.Clear();
  74.                         Console.WriteLine("Неверный ввод!");
  75.                         Console.ReadLine();
  76.                     }
  77.                 }
  78.  
  79.                 else if (chose == 5)
  80.                 {
  81.                     database.AllPlayersInfo();
  82.                     Console.ReadLine();
  83.                 }
  84.  
  85.                 else Console.WriteLine("Неверный ввод!");
  86.             }
  87.         }
  88.  
  89.         static void DrawMenu()
  90.         {
  91.             Console.WriteLine("1) Добавить игрока");
  92.             Console.WriteLine("2) Удалить игрока");
  93.             Console.WriteLine("3) Забанить игрока");
  94.             Console.WriteLine("4) Разбанить игрока");
  95.             Console.WriteLine("5) Вывод игроков");
  96.             Console.Write("Выбрать пункт: ");
  97.         }
  98.     }
  99.  
  100.     class DataBase
  101.     {
  102.         public Player[] Players;
  103.  
  104.         public DataBase(Player[] players)
  105.         {
  106.             Players = players;
  107.         }
  108.  
  109.         public void AllPlayersInfo()
  110.         {
  111.             Console.Clear();
  112.             for (int i = 0; i < Players.Length; i++)
  113.             {
  114.                 Console.WriteLine($"Номер игрока: {Players[i].Number} \nИмя игорка: {Players[i].Name}\nУровень игрока: {Players[i].Level}\nФлаг: {Players[i].Flag}");
  115.                 Console.WriteLine();
  116.             }
  117.         }
  118.  
  119.         public void AddPlayer(string name, int level)
  120.         {
  121.             Player[] tempPlayer = new Player[Players.Length + 1];
  122.  
  123.             tempPlayer[tempPlayer.Length - 1] = new Player(tempPlayer.Length, name, level, true);
  124.  
  125.             for (int i = 0; i < Players.Length; i++)
  126.             {
  127.                 tempPlayer[i] = Players[i];
  128.             }
  129.  
  130.             Players = tempPlayer;
  131.         }
  132.  
  133.         public void DeletePlayer(int number)
  134.         {
  135.  
  136.             Player[] tempPlayer = new Player[Players.Length - 1];
  137.             Player[] copyPlayer = new Player[Players.Length];
  138.             copyPlayer = Players;
  139.  
  140.             int tempNumber = copyPlayer[number - 1].Number;
  141.             copyPlayer[number - 1] = copyPlayer[copyPlayer.Length - 1];
  142.             copyPlayer[number - 1].Number = tempNumber;
  143.  
  144.             for (int i = 0; i < copyPlayer.Length; i++)
  145.             {
  146.                 if (i < copyPlayer.Length - 1)
  147.                 {
  148.                     tempPlayer[i] = copyPlayer[i];
  149.                 }
  150.             }
  151.  
  152.             Players = tempPlayer;
  153.         }
  154.  
  155.         public void BanAndUnban(bool flag, string message, int chose)
  156.         {
  157.             if (Players[chose - 1].Flag == flag)
  158.                 Players[chose - 1].Flag = !flag;
  159.             else
  160.             {
  161.                 Console.Clear();
  162.                 Console.WriteLine(message);
  163.                 Console.ReadLine();
  164.             }
  165.         }
  166.     }
  167.  
  168.     class Player
  169.     {
  170.         public int Number;
  171.         private string _name;
  172.         private int _level;
  173.         public bool Flag;
  174.  
  175.         public string Name { get { return _name; } set { _name = value ; } }
  176.         public int Level { get { return _level; } set { _level = value; } }
  177.  
  178.         public Player(int number, string name, int level, bool flag)
  179.         {
  180.             Number = number;
  181.             _name = name;
  182.             _level = level;
  183.             Flag = flag;
  184.         }
  185.     }
  186. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement