Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace FifthProject
- {
- class Program
- {
- static void Main(string[] args)
- {
- DatabaseOfPlayers players = new DatabaseOfPlayers();
- while (true)
- {
- Console.WriteLine("\nМеню");
- Console.WriteLine("1. Добавить игрока");
- Console.WriteLine("2. Удалить игрока");
- Console.WriteLine("3. Забанить игрока");
- Console.WriteLine("4. Разбанить игрока");
- Console.WriteLine("5. Просмотреть список игроков\n");
- switch (Console.ReadLine())
- {
- case "1":
- Console.Clear();
- Console.Write("Введите id: ");
- int id = Convert.ToInt32(Console.ReadLine());
- Console.Write("Введите уровень: ");
- int level = Convert.ToInt32(Console.ReadLine());
- Console.Write("Введите имя: ");
- string name = Console.ReadLine();
- Player player = new Player(id, level, name);
- players.AddPlayer(player);
- break;
- case "2":
- Console.Clear();
- Console.Write("Введите id игрока для удаления");
- int removeId = Convert.ToInt32(Console.ReadLine());
- players.RemovePlayer(removeId);
- break;
- case "3":
- Console.Clear();
- Console.Write("Введите id игрока для бана");
- int banId = Convert.ToInt32(Console.ReadLine());
- players.Ban(banId);
- break;
- case "4":
- Console.Clear();
- Console.Write("Введите id игрока для разбана");
- int unbanId = Convert.ToInt32(Console.ReadLine());
- players.Unban(unbanId);
- break;
- case "5":
- Console.Clear();
- Console.WriteLine("Все игроки: ");
- for (int i = 0; i < players.players.Length; i++)
- {
- players.players[i].WriteInformation();
- }
- break;
- default:
- Console.WriteLine("Введите корректные данные");
- break;
- }
- }
- }
- }
- class Player
- {
- public int ID { get; private set; }
- private string _name;
- private int _level;
- public bool IsBanned { get; set; }
- public Player(int id, int level = 1, string name = "", bool isBanned = false)
- {
- ID = id;
- _name = name;
- _level = level;
- IsBanned = isBanned;
- }
- public void WriteInformation()
- {
- string isBanned = IsBanned ? "Забанен" : "Не забанен";
- Console.WriteLine($"ID: {ID}\nИмя: {_name}\nУровень: {_level}\nСостояние: {isBanned}\n");
- }
- }
- class DatabaseOfPlayers
- {
- public Player[] players = new Player[0];
- public void AddPlayer(Player player)
- {
- Player[] tempPlayers = new Player[players.Length + 1];
- for (int i = 0; i < players.Length; i++)
- {
- tempPlayers[i] = players[i];
- }
- tempPlayers[tempPlayers.Length - 1] = player;
- players = tempPlayers;
- }
- public void RemovePlayer(int id)
- {
- for (int k = 0; k < players.Length; k++)
- {
- if (players[k].ID == id)
- {
- Player[] tempPlayers = new Player[players.Length - 1];
- for (int i = 0, j = 0; i < tempPlayers.Length; i++, j++)
- {
- if (k == i && k != players.Length - 1)
- {
- j++;
- }
- tempPlayers[i] = players[j];
- }
- players = tempPlayers;
- }
- }
- }
- public void Ban(int id)
- {
- for (int i = 0; i < players.Length; i++)
- {
- if (players[i].ID == id)
- {
- players[i].IsBanned = true;
- }
- }
- }
- public void Unban(int id)
- {
- for (int i = 0; i < players.Length; i++)
- {
- if (players[i].ID == id)
- {
- players[i].IsBanned = false;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement