private void InitLists() { bool favorite = false; foreach (Champion champ in ChampionsDefinition) { favorite = false; foreach (Champion favoriteChamp in user.UserFavoriteChampions) { if (favoriteChamp == champ) { favorite = true; break; } } if (favorite) { FavoriteChampions.Add(champ); } else { AllChampions.Add(champ); } } }
private void ChangeFavorite() { if (SelectedChampion == null) { return; } foreach (Champion champ in user.UserFavoriteChampions) { if (champ == SelectedChampion) { user.UserFavoriteChampions.Remove(SelectedChampion); FavoriteChampions.Remove(SelectedChampion); AllChampions.Add(SelectedChampion); UpdateProperty(nameof(IsSelectedChampionFavorite)); return; } } user.UserFavoriteChampions.Add(SelectedChampion); FavoriteChampions.Add(SelectedChampion); AllChampions.Remove(SelectedChampion); UpdateProperty(nameof(IsSelectedChampionFavorite)); }
public async void LoadAllChampionsRiotApi() { AllChampions.RemoveAllChampions(); if (MySettings.UserApiKey.Length == 36) { try { StaticRiotApi staticApi = StaticRiotApi.GetInstance(_s.UserApiKey); RiotSharp.StaticDataEndpoint.ChampionListStatic champions = await staticApi.GetChampionsAsync(RiotSharp.Region.euw, RiotSharp.StaticDataEndpoint.ChampionData.info, RiotSharp.Language.en_US); for (int i = 0; i < champions.Champions.Count; i++) { string ChampionName = champions.Champions.Values.ElementAt(i).Name; AllChampions.AddChampion(ChampionName); } } catch (RiotSharpException ex) { StaticErrorLogger.WriteErrorReport(ex, "Handled; AppRuntimeResourcesManager/LoadAllChampionsRiotApi:RiotSharpException"); DisplayPopup("Trouble with loading champions trough the api"); } catch (NullReferenceException ex) { StaticErrorLogger.WriteErrorReport(ex, "Handled; AppRuntimeResourcesManager/LoadAllChampionsRiotApi:NullReferenceException"); DisplayPopup("Internet problem while loading champions"); } } else { DisplayPopup("No correct API key found, get one at https://developer.riotgames.com/"); } }