using System.Collections.Generic;
public static void Main()
new TeamPicker().PickMyTeam();
private readonly string[] TopChamps = new[]{"Aatrox","Akali","Camille","Cassiopeia","Cho'Gath","Darius","Dr. Mundo","Fiora","Gangplank","Garen","Gnar","Hecarim","Heimerdinger","Illaoi","Irelia","Jax","Jayce","Karma","Kayle","Kennen","Kled","Lillia","Lucian","Malphite","Maokai","Mordekaiser","Morgana","Nasus","Nocturne","Olaf","Ornn","Pantheon","Poppy","Quinn","Renekton","Rengar","Riven","Rumble","Ryze","Sett","Shen","Singed","Sion","Sylas","Teemo","Trundle","Tryndamere","Urgot","Vayne","Viego","Vladimir","Volibear","Wukong","Yasuo","Yone","Yorick","Zac"};
private readonly string[] JngChamps = new[]{"Amumu","Dr. Mundo","Ekko","Elise","Evelynn","Fiddlesticks","Gragas","Graves","Hecarim","Ivern","Jarvan IV","Jax","Karthus","Kayn","Kha'Zix","Kindred","Kled","Lee Sin","Lillia","Master Yi","Nidalee","Nocturne","Nunu & Willump","Olaf","Poppy","Rammus","Rek'Sai","Rengar","Sejuani","Sett","Shaco","Shyvana","Skarner","Sylas","Taliyah","Trundle","Udyr","Vi","Viego","Volibear","Warwick","Wukong","Xin Zhao","Zac"};
private readonly string[] MidChamps = new[]{"Aatrox","Ahri","Akali","Anivia","Annie","Aurelion Sol","Azir","Brand","Camille","Cassiopeia","Cho'Gath","Corki","Diana","Ekko","Fizz","Galio","Garen","Heimerdinger","Irelia","Jayce","Kassadin","Katarina","LeBlanc","Lillia","Lissandra","Lucian","Lux","Malphite","Malzahar","Morgana","Neeko","Nocturne","Nunu","Orianna","Pantheon","Pyke","Qiyana","Renekton","Rumble","Ryze","Swain","Sylas","Syndra","Talon","Tristana","Twisted Fate","Veigar","Vel'Koz","Viego","Viktor","Vladimir","Xerath","Yasuo","Yone","Zed","Ziggs","Zilean","Zoe"};
private readonly string[] AdcChamps = new[]{"Aphelios","Ashe","Caitlyn","Cassiopeia","Draven","Ezreal","Heimerdinger","Jhin","Jinx","Kai'Sa","Kalista","Kog'Maw","Lucian","Miss Fortune","Samira","Senna","Sivir","Swain","Tristana","Twitch","Varus","Vayne","Xayah","Yasuo","Ziggs"};
private readonly string[] SupChamps = new[]{"Alistar","Bard","Blitzcrank","Brand","Braum","Galio","Janna","Karma","Leona","Lulu","Lux","Malphite","Maokai","Morgana","Nami","Nautilus","Pantheon","Poppy","Pyke","Rakan","Rell","Senna","Seraphine","Sett","Shaco","Shen","Sona","Soraka","Swain","Tahm Kench","Taric","Thresh","Vel'Koz","Xerath","Yuumi","Zac","Zilean","Zyra"};
private readonly List<string> names = new List<string>{"Trevor ", "Michael", "Keenan ", "Daniel ", "Darren "};
private readonly List<string> roles = new List<string>{"TOP", "JNG", "MID", "ADC", "SUP"};
private List<string> PickedChampions = new List<string>();
private bool SadTeemo = false;
private Random _rnd = new Random();
var namesRandom = new List<string>();
var rolesRandom = new List<string>();
for (int i = 4; i >= 0; i--)
var namesIndex = _rnd.Next(0, i + 1);
var rolesIndex = _rnd.Next(0, i + 1);
rolesRandom.Add(roles[rolesIndex]);
roles.RemoveAt(rolesIndex);
namesRandom.Add(names[namesIndex]);
names.RemoveAt(namesIndex);
Console.WriteLine("TOP: {0} - {1}", namesRandom[rolesRandom.IndexOf("TOP")], PickChampion(namesRandom[rolesRandom.IndexOf("TOP")], "TOP"));
Console.WriteLine("JNG: {0} - {1}", namesRandom[rolesRandom.IndexOf("JNG")], PickChampion(namesRandom[rolesRandom.IndexOf("JNG")], "JNG"));
Console.WriteLine("MID: {0} - {1}", namesRandom[rolesRandom.IndexOf("MID")], PickChampion(namesRandom[rolesRandom.IndexOf("MID")], "MID"));
Console.WriteLine("ADC: {0} - {1}", namesRandom[rolesRandom.IndexOf("ADC")], PickChampion(namesRandom[rolesRandom.IndexOf("ADC")], "ADC"));
Console.WriteLine("SUP: {0} - {1}", namesRandom[rolesRandom.IndexOf("SUP")], PickChampion(namesRandom[rolesRandom.IndexOf("SUP")], "SUP"));
if(SadTeemo) Console.WriteLine("\nSad Teemo noises :(");
public string PickChampion(string name, string role)
case "TOP": champ = TopChamps[_rnd.Next(0, TopChamps.Length)]; break;
case "JNG": champ = JngChamps[_rnd.Next(0, JngChamps.Length)]; break;
case "MID": champ = MidChamps[_rnd.Next(0, MidChamps.Length)]; break;
case "ADC": champ = AdcChamps[_rnd.Next(0, AdcChamps.Length)]; break;
case "SUP": champ = SupChamps[_rnd.Next(0, SupChamps.Length)]; break;
if(ValidateChampion(name, champ))
PickedChampions.Add(champ);
else return PickChampion(name, role);
public bool ValidateChampion(string player, string champion)
if(PickedChampions.Contains(champion)) return false;
if(player.Equals("Keenan") && champion.Equals("Teemo"))