Advertisement
Guest User

Untitled

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