Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [StartCode]
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApp23
- {
- internal class Program
- {
- static void Main(string[] args)
- {
- DataBase database = new DataBase();
- int workMenu = 1;
- while (workMenu ==1)
- {
- database.ShowMenu();
- Console.WriteLine();
- database.ShowDataBase();
- Console.WriteLine();
- Console.WriteLine("Продолжить работать? (1-да ,2-нет) : ");
- workMenu = Convert.ToInt32(Console.ReadLine());
- }
- }
- }
- class Player
- {
- private int _level;
- private string _name;
- private bool _ban;
- public int Level { get { return _level; } set { _level = value; } }
- public string Name { get { return _name; } set { _name = value; } }
- public Player(int level, string name)
- {
- Level = level;
- Name = name;
- }
- public Player()
- {
- }
- public void ShowPlayer(int number)
- {
- Console.WriteLine("Номер - " + number + " Уровень - " + Level + " Никнейм - " + Name + " Наличие бана - " + _ban);
- }
- public void Ban()
- {
- _ban = true;
- }
- public void UnBan()
- {
- _ban = false;
- }
- }
- class DataBase
- {
- List<Player> database = new List<Player>();
- public void ShowDataBase()
- {
- int counter = 1;
- foreach (Player player in database)
- {
- player.ShowPlayer(counter++);
- }
- }
- public void AddPlayer(Player player)
- {
- Console.WriteLine("Введите уровень игрока : ");
- int temporaryLevel = Convert.ToInt32(Console.ReadLine());
- Console.WriteLine("Введите никнейм игрока : ");
- string temporaryName = Console.ReadLine();
- Console.WriteLine("Игрок в бане ?(1-да ,2-нет) : ");
- int temporaryIsBanned = Convert.ToInt32(Console.ReadLine());
- Player temporaryPlayer = new Player (temporaryLevel, temporaryName);
- while (temporaryIsBanned == 1 || temporaryIsBanned == 2)
- {
- if (temporaryIsBanned == 1)
- {
- player.Ban();
- break;
- }
- else if (temporaryIsBanned == 2)
- {
- player.UnBan();
- break;
- }
- else
- {
- Console.WriteLine("ОШИБКА!");
- }
- }
- database.Add(temporaryPlayer);
- }
- public void DelitePlayer(Player player)
- {
- Console.WriteLine("Введите номер игрока для удаления :");
- string delitePlayer = Console.ReadLine();
- while (int.TryParse(Convert.ToString(delitePlayer), out int number) == false || TryGetPlayer(number, out player) == false)
- {
- delitePlayer = Console.ReadLine();
- }
- database.Remove(player);
- }
- public void BanPlayer(Player player)
- {
- Console.WriteLine("Введите номер игрока для бана :");
- string banNumber = Console.ReadLine();
- while (int.TryParse(Convert.ToString(banNumber), out int number) == false || TryGetPlayer(number, out player) == false)
- {
- banNumber = Console.ReadLine();
- }
- player.Ban();
- }
- public void UnBanPlayer(Player player)
- {
- Console.WriteLine("Введите номер игрока для разбана :");
- string unBanNumber = Console.ReadLine();
- while (int.TryParse(Convert.ToString(unBanNumber), out int number) == false || TryGetPlayer(number, out player) == false)
- {
- unBanNumber = Console.ReadLine();
- }
- player.UnBan();
- }
- public void ShowMenu()
- {
- Console.WriteLine(" МЕНЮ");
- Console.WriteLine();
- Console.WriteLine("1 - Добавить игрока.\n2 - Удалить игрока.\n3 - Забанить игрока.\n4 - Разбанить игрока.");
- int userCommand = Convert.ToInt32(Console.ReadLine());
- Player player = new Player();
- switch (userCommand)
- {
- case 1:
- AddPlayer(player);
- break;
- case 2:
- DelitePlayer(player);
- break;
- case 3:
- BanPlayer(player);
- break;
- case 4:
- UnBanPlayer(player);
- break;
- }
- }
- private bool TryGetPlayer(int number, out Player player)
- {
- if (number > 0 && number <= database.Count)
- {
- player = database[number - 1];
- return true;
- }
- else
- {
- player = null;
- return false;
- }
- }
- }
- }
- [EndCode]
Advertisement
Add Comment
Please, Sign In to add comment