public void SelectNextHero() { if (current != null) { heroPool.Unselect(current); } SelectHero(AvailableHeroes.SkipWhile(x => current != null && x != current).Skip(1).First()); }