Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 8.74 KB | None | 0 0
  1. using System;
  2.  
  3.  
  4.     class Program
  5.     {
  6.         public byte i = 0;
  7.         static void Main()
  8.         {
  9.  
  10.             bool flag = true;
  11.             DataBase dataBase = new DataBase();
  12.             dataBase.Player =  { new Player(1, "ramil", 1, false)};
  13.  
  14.             dataBaseProcessing dataBaseProcessing = new dataBaseProcessing();        
  15.             // Play[] player = {new Play(1,"ramil",1,false), new Play(2, "ramil2", 2, false), new Play(3, "ramil3", 3, false), new Play(4, "ramil4", 3, false) };
  16.             while (flag)
  17.             {
  18.                 Console.Clear();
  19.                 Console.WriteLine("Выберете дальнейшее действие");
  20.                 Console.WriteLine("1 Добавление игрока ");
  21.                 Console.WriteLine("2 Бан игрока ");
  22.                 Console.WriteLine("3 Разбан игрока ");
  23.                 Console.WriteLine("4 Удаление игрока");
  24.                 Console.WriteLine("5 Выход");
  25.                 //switch (Console.ReadLine())
  26.                 //{
  27.                 //    case "1":
  28.                 //        dataBaseProcessing.addPlayer(ref Player);
  29.                 //        break;
  30.                 //    case "2":
  31.                 //        dataBaseProcessing.showPlayerInfo(Player);
  32.                 //        dataBaseProcessing.banPlay(Player);
  33.                 //        Console.WriteLine("Статаус игроков ");
  34.                 //        dataBaseProcessing.showPlayerInfo(Player);
  35.                 //        break;
  36.                 //    case "3":
  37.                 //        dataBaseProcessing.showPlayerInfo(Player);
  38.                 //        dataBaseProcessing.unlockPlayer(Player);
  39.                 //        Console.WriteLine("Статаус игроков ");
  40.                 //        dataBaseProcessing.showPlayerInfo(Player);
  41.                 //        break;
  42.                 //    case "4":
  43.                 //        dataBaseProcessing.showPlayerInfo(Player);
  44.                 //        dataBaseProcessing.deltaPlay(ref Player);
  45.                 //        break;
  46.                 //    case "5":
  47.                 //        flag = false;
  48.                 //        break;
  49.                 //    default:
  50.                 //        Console.WriteLine("Введите команду от 1 до 5 ");
  51.                 //        break;
  52.                 //}
  53.             }
  54.         }
  55.  
  56.     }
  57.  
  58.     class DataBase
  59.     {
  60.         public Player[] Player;
  61.     }
  62.    
  63.     class Player
  64.     {
  65.         byte _numbe;
  66.  
  67.         public byte Numbe
  68.         {
  69.             get { return _numbe; }
  70.             set { _numbe = value; }
  71.  
  72.         }
  73.         string _name { get; set; }
  74.         byte _level { get; set; }
  75.         bool _flagBan { get; set; }
  76.         public bool FlagBan
  77.         {
  78.             get { return _flagBan; }
  79.             set { _flagBan = value; }
  80.  
  81.         }
  82.  
  83.         public Player(byte numbe, string name, byte level, bool flag)
  84.         {
  85.             _numbe = numbe;
  86.             _name = name;
  87.             _level = level;
  88.             _flagBan = flag;
  89.  
  90.         }
  91.  
  92.         public void showPlayInfo()
  93.         {
  94.             Console.WriteLine("Номер игрока {0} ,Имя игрока {1}, Урвень игрока {2}, Состояние игрока {3}", _numbe, _name, _level, _flagBan);
  95.         }
  96.     }
  97.  
  98.     class dataBaseProcessing
  99.     {
  100.         public void deltaPlay(ref Player[] play)
  101.         {
  102.             byte numbe = 0;
  103.             Console.WriteLine("Введите номер игрока для удоления ");
  104.             while (true)
  105.             {
  106.                 if (play.Length > 0)
  107.                     if (byte.TryParse(Console.ReadLine(), out numbe))
  108.                     {
  109.                         if (numbe > 0 && numbe <= play.Length)
  110.                             break;
  111.                         else Console.WriteLine("Введите число не меньше 1 и больше {0}", play.Length);
  112.                     }
  113.                     else
  114.                         Console.WriteLine("Введите число ");
  115.                 else
  116.                 {
  117.                     Console.WriteLine("Нечего удолять");
  118.                     Console.ReadKey();
  119.                     break;
  120.                 }
  121.             }
  122.             if (play.Length > 0)
  123.             {
  124.                 Player[] tempPlay = new Player[play.Length - 1];
  125.                 for (int i = 0, ii = 0; i < play.Length - 1; i++)
  126.                 {
  127.                     if (numbe - 1 != i)
  128.                     {
  129.                         tempPlay[i] = play[i + ii];
  130.                         tempPlay[i].Numbe -= (byte)ii;
  131.                     }
  132.                     else
  133.                     {
  134.                         tempPlay[i] = play[i + 1];
  135.                         ii += 1;
  136.                         tempPlay[i].Numbe -= (byte)ii;
  137.                     }
  138.                 }
  139.                 play = tempPlay;
  140.             }
  141.         }
  142.         public void showPlayerInfo(Player[] play)
  143.         {
  144.             foreach (var item in play)
  145.             {
  146.                 item.showPlayInfo();
  147.             }
  148.             Console.ReadLine();
  149.         }
  150.         public void addPlayer(ref Player[] play)
  151.         {
  152.             Player[] tempPlay = new Player[play.Length + 1];
  153.             for (int i = 0; i < play.Length; i++)
  154.             {
  155.                 tempPlay[i] = play[i];
  156.             }
  157.  
  158.             tempPlay[play.Length] = new Player(Convert.ToByte(play.Length + 1), inputName(), inputLevel(1, 100), flagBan());
  159.             play = tempPlay;
  160.         }
  161.  
  162.         public bool flagBan()
  163.         {
  164.             Console.WriteLine("Состояние бана игрока при созданий по умолчанию " + false);
  165.             Console.ReadKey();
  166.             return false;
  167.         }
  168.  
  169.         public byte inputLevel(byte min, byte max)
  170.         {
  171.             byte i;
  172.             while (true)
  173.             {
  174.                 if (byte.TryParse(Console.ReadLine(), out i))
  175.                     if (i >= min && i <= max)
  176.                         return i;
  177.                     else Console.WriteLine("Введите число не меше {0} и небольше {1}", min, max);
  178.                 else Console.WriteLine("Введите числовые данные");
  179.             }
  180.         }
  181.  
  182.         public string inputName()
  183.         {
  184.             Console.Clear();
  185.             Console.WriteLine("Введите имя игрока ");
  186.             string name = "";
  187.             while (true)
  188.             {
  189.                 ConsoleKeyInfo key = Console.ReadKey(true);
  190.  
  191.                 if (key.KeyChar >= 65 && key.KeyChar <= 90 || key.KeyChar >= 97 && key.KeyChar <= 122 || key.KeyChar >= 1040 && key.KeyChar <= 1103)
  192.                 {
  193.                     name += key.KeyChar;
  194.                     Console.Clear();
  195.                     Console.WriteLine("Введите имя игрока ");
  196.                     Console.Write(name);
  197.                 }
  198.                 if (key.Key == ConsoleKey.Backspace)
  199.                     if (name.Length != 0)
  200.                     {
  201.                         name = name.Remove(name.Length - 1);
  202.                         Console.Write("\b \b");
  203.                     }
  204.                 if (key.Key == ConsoleKey.Enter)
  205.                     break;
  206.             }
  207.             Console.WriteLine("\nВведите игроку уровень от 0 до 100");
  208.             return name;
  209.         }
  210.  
  211.         public void banPlay(Player[] play)
  212.         {
  213.             Console.WriteLine("Введите номер игрока которого хотите забанить ");
  214.             byte numbe = Convert.ToByte(inputLevel(1, (byte)play.Length) - 1);
  215.             if (play[numbe].FlagBan != true)
  216.             {
  217.                 play[numbe].FlagBan = true;
  218.                 Console.WriteLine("Игрок под номером {0} забанен ", numbe + 1);
  219.                 Console.ReadKey();
  220.                 Console.Clear();
  221.             }
  222.             else
  223.                 Console.WriteLine("Игрок уже забанен");
  224.         }
  225.  
  226.         public void unlockPlayer(Player[] play)
  227.         {
  228.             Console.WriteLine("Введите номер игрока которого хотите забанить ");
  229.             byte numbe = Convert.ToByte(inputLevel(1, (byte)play.Length) - 1);
  230.             if (play[numbe].FlagBan != false)
  231.             {
  232.                 play[numbe].FlagBan = false;
  233.                 Console.WriteLine("Игрок под номером {0} разблокирован", numbe + 1);
  234.                 Console.ReadKey();
  235.                 Console.Clear();
  236.             }
  237.             else
  238.                 Console.WriteLine("Игрок уже разблокирован");
  239.         }
  240.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement