Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- public class Program
- {
- public static void Main(string[] args)
- {
- Server server = new Server();
- server.ShowPlayersTopLevel();
- server.ShowPlayersTopPower();
- }
- }
- public class Server
- {
- private Random _random;
- private List<Player> _players;
- private int _playersTopAmount;
- public Server()
- {
- _players = new List<Player>();
- _random = new Random();
- _playersTopAmount = 3;
- CreatePlayers();
- }
- public void ShowPlayersTopLevel()
- {
- List<Player> playersTopLevel = _players.OrderByDescending(player => player.Level)
- .Take(_playersTopAmount).ToList();
- Console.WriteLine("\nTop Level : ");
- PrintPlayers(playersTopLevel);
- }
- public void ShowPlayersTopPower()
- {
- List<Player> playersTopPower = _players.OrderByDescending(player => player.Power)
- .Take(_playersTopAmount).ToList();
- Console.WriteLine("\nTop Power : ");
- PrintPlayers(playersTopPower);
- }
- private void CreatePlayers()
- {
- int playersAmountMinimum = 10;
- int playersAmountMaximum = 100;
- string[] _names = { "Mike", "Nick", "Valera", "Virgil", "Dante" };
- int levelMinimum = 14;
- int levelMaximum = 89;
- int powerMinimum = 40;
- int powerMaximum = 250;
- int amountPlayers = _random.Next(playersAmountMinimum, playersAmountMaximum);
- string name;
- int level;
- int power;
- for (int i = 0; i < amountPlayers; ++i)
- {
- name = _names[_random.Next(names.Length)];
- level = _random.Next(levelMinimum, levelMaximum);
- power = _random.Next(powerMinimum, powerMaximum);
- _players.Add(new Player(name, level, power));
- }
- }
- private void PrintPlayers(List<Player> players)
- {
- Console.WriteLine();
- foreach (Player player in players)
- Console.WriteLine(player);
- }
- }
- public class Player
- {
- public string Name { get; private set; }
- public int Level { get; private set; }
- public int Power { get; private set; }
- public Player(string name, int level, int power)
- {
- Name = name;
- Level = level;
- Power = power;
- }
- public override string ToString()
- {
- return String.Format($"{Name}({Level} lvl.) - {Power}"); ;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement