public void IssueWar(string nationsType) { warEnd.AppendLine($"War {privateCounter} issued by {nationsType}"); privateCounter++; Dictionary <Nation, double> dic = new Dictionary <Nation, double>(); dic.Add(airnation, airnation.Calculate()); dic.Add(waternation, waternation.Calculate()); dic.Add(firenation, firenation.Calculate()); dic.Add(earthnation, earthnation.Calculate()); dic = dic.OrderByDescending(a => a.Value).ToDictionary(a => a.Key, b => b.Value); foreach (var nat in dic.Skip(1)) { switch (nat.Key.type) { case "Air": airnation.ClearPower(); break; case "Water": waternation.ClearPower(); break; case "Fire": firenation.ClearPower(); break; case "Earth": earthnation.ClearPower(); break; default: break; } } }