예제 #1
0
        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);
                }
            }
        }
예제 #2
0
        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));
        }
예제 #3
0
        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/");
            }
        }