/// <summary> /// Deletes a mastery page from your mastery page book and updates the /// contents of the local and server-side mastery books /// </summary> /// <param name="page">The page to delete</param> public void DeleteMasteryPage(MasteryBookPageDTO page) { if (!Masteries.BookPages.Contains(page)) throw new ArgumentException("Book page not found: " + page); Masteries.BookPages.Remove(page); SelectedMasteryPage = Masteries.BookPages.First(); SelectedMasteryPage.Current = true; RiotServices.MasteryBookService.SaveMasteryBook(Masteries); }
private void MasteryPageListView_SelectionChanged(object sender, SelectionChangedEventArgs e) { foreach (var mastery in Client.Masteries) { mastery.selectedRank = 0; } foreach (var masteryPage in Client.LoginPacket.AllSummonerData.MasteryBook.BookPages) { if (masteryPage.Current) { masteryPage.Current = false; } if (Math.Abs(masteryPage.PageId - _masteryPageOrder[MasteryPageListView.SelectedIndex]) > .00001) { continue; } masteryPage.Current = true; _selectedBook = masteryPage; } ChangeBook(); RenderMasteries(); }
private async void RightButton_Click(object sender, RoutedEventArgs e) { int i = 0; foreach (MasteryBookPageDTO MasteryPage in Client.LoginPacket.AllSummonerData.MasteryBook.BookPages) { if (MasteryPage.Current) { break; } i++; } //Make sure it has found the mastery page! Just to be safe :) if (i == Client.LoginPacket.AllSummonerData.MasteryBook.BookPages.Count - 1) { return; } //Swap the mastery page id and location MasteryBookPageDTO tempDTO = Client.LoginPacket.AllSummonerData.MasteryBook.BookPages[i]; MasteryBookPageDTO tempDTOTwo = Client.LoginPacket.AllSummonerData.MasteryBook.BookPages[i + 1]; double TempDTOTwoId = tempDTOTwo.PageId; tempDTOTwo.PageId = tempDTO.PageId; tempDTO.PageId = TempDTOTwoId; Client.LoginPacket.AllSummonerData.MasteryBook.BookPages.Remove(tempDTO); Client.LoginPacket.AllSummonerData.MasteryBook.BookPages.Insert(i + 1, tempDTO); MasteryPageListView.SelectedIndex += 1; await RiotCalls.SaveMasteryBook(Client.LoginPacket.AllSummonerData.MasteryBook); }
internal Account(LoginSession session, LoginDataPacket packet) { LoginSession = session; LoginPacket = packet; SelectedRunePage = Runes.BookPages.FirstOrDefault(p => p.Current); SelectedMasteryPage = Masteries.BookPages.FirstOrDefault(p => p.Current); }
/// <summary> /// Selects a mastery page as the default selected page for your account and /// updates the contents of the local and server-side mastery books /// </summary> /// <param name="page">The page to select</param> public async void SelectMasteryPage(MasteryBookPageDTO page) { if (page == SelectedMasteryPage) return; foreach (var item in Masteries.BookPages) item.Current = false; page.Current = true; SelectedMasteryPage = page; await RiotServices.MasteryBookService.SelectDefaultMasteryBookPage(page); await RiotServices.MasteryBookService.SaveMasteryBook(Masteries); }
/// <summary> /// Deletes a mastery page from your mastery page book and updates the /// contents of the local and server-side mastery books /// </summary> /// <param name="page">The page to delete</param> public void DeleteMasteryPage(MasteryBookPageDTO page) { if (!Masteries.BookPages.Contains(page)) { throw new ArgumentException("Book page not found: " + page); } Masteries.BookPages.Remove(page); SelectedMasteryPage = Masteries.BookPages.First(); SelectedMasteryPage.Current = true; RiotServices.MasteryBookService.SaveMasteryBook(Masteries); }
private void LoadPage(MasteryBookPageDTO page) { loading = true; this.page = page; foreach (var item in Icons.Values) item.Points = 0; PageNameBox.Text = page.Name; foreach (var item in page.TalentEntries) { var talent = item; Icons[talent.TalentId + ""].Points = talent.Rank; } loading = false; CheckPoints(); unsaved = false; Changed.Text = ""; Session.Current.Account.SelectMasteryPage(page); }
/// <summary> /// Selects a mastery page as the default selected page for your account and /// updates the contents of the local and server-side mastery books /// </summary> /// <param name="page">The page to select</param> public async void SelectMasteryPage(MasteryBookPageDTO page) { if (page == SelectedMasteryPage) { return; } foreach (var item in Masteries.BookPages) { item.Current = false; } page.Current = true; SelectedMasteryPage = page; await RiotServices.MasteryBookService.SelectDefaultMasteryBookPage(page); await RiotServices.MasteryBookService.SaveMasteryBook(Masteries); }
private void MasteryPageListView_SelectionChanged(object sender, SelectionChangedEventArgs e) { foreach (masteries mastery in Client.Masteries) { mastery.selectedRank = 0; } foreach (MasteryBookPageDTO MasteryPage in Client.LoginPacket.AllSummonerData.MasteryBook.BookPages) { if (MasteryPage.Current) { MasteryPage.Current = false; } } Client.LoginPacket.AllSummonerData.MasteryBook.BookPages[MasteryPageListView.SelectedIndex].Current = true; SelectedBook = Client.LoginPacket.AllSummonerData.MasteryBook.BookPages[MasteryPageListView.SelectedIndex]; ChangeBook(); RenderMasteries(); }
private void LoadPage(MasteryBookPageDTO page) { loading = true; this.page = page; foreach (var item in Icons.Values) { item.Points = 0; } PageNameBox.Text = page.Name; foreach (var item in page.TalentEntries) { var talent = item; Icons[talent.TalentId + ""].Points = talent.Rank; } loading = false; CheckPoints(); unsaved = false; Changed.Text = ""; Session.Current.Account.SelectMasteryPage(page); }
private async void AddPageButton_Click(object sender, RoutedEventArgs e) { double pageId = 0; foreach (var item in Client.LoginPacket.AllSummonerData.MasteryBook.BookPages) { if (pageId <= item.PageId) { pageId = item.PageId; pageId++; } } MasteryBookPageDTO newPage = new MasteryBookPageDTO(); newPage.SummonerId = Client.LoginPacket.AllSummonerData.Summoner.SumId; newPage.Name = "@@!PaG3!@@" + pageId; newPage.PageId = pageId; newPage.TalentEntries = new List <TalentEntry>(); Client.LoginPacket.AllSummonerData.MasteryBook.BookPages.Add(newPage); await RiotCalls.SaveMasteryBook(Client.LoginPacket.AllSummonerData.MasteryBook); _masteryPageOrder.Add(pageId); MasteryPageListView.Items.Add(Client.LoginPacket.AllSummonerData.MasteryBook.BookPages.Count + " "); }
public static async Task<object> GetMasterySetups(string realm, double summonerId) { object variable; RiotAccount[] all = JsApiService.AccountBag.GetAll(); bool flag = all.Any<RiotAccount>((RiotAccount x) => { if (!string.Equals(x.RealmId, realm, StringComparison.OrdinalIgnoreCase)) { return false; } return (double)x.SummonerId == summonerId; }); if (!flag) { RiotAccount riotAccount = JsApiService.AccountBag.Get(realm); MasteryBookDTO masteryBookDTO = await riotAccount.InvokeCachedAsync<MasteryBookDTO>("masteryBookService", "getMasteryBook", summonerId); MasteryBookDTO masteryBookDTO1 = masteryBookDTO; List<MasteryBookPageDTO> bookPages = masteryBookDTO1.BookPages; MasteryBookPageDTO masteryBookPageDTO = bookPages.FirstOrDefault<MasteryBookPageDTO>((MasteryBookPageDTO x) => x.Current); if (masteryBookPageDTO == null) { masteryBookPageDTO = new MasteryBookPageDTO(); } string str = masteryBookPageDTO.PageId.ToString(CultureInfo.InvariantCulture); List<MasteryBookPageDTO> masteryBookPageDTOs = masteryBookDTO1.BookPages; IOrderedEnumerable<MasteryBookPageDTO> pageId = from page in masteryBookPageDTOs orderby page.PageId select page; variable = new { Local = false, ActiveId = str, Setups = from page in pageId select new { Id = page.PageId.ToString(CultureInfo.InvariantCulture), Name = page.Name, Masteries = from entry in page.TalentEntries select new { Id = entry.TalentId, Points = entry.Rank } } }; } else { LittleClient client = JsApiService.Client; object[] objArray = new object[] { "masteries" }; MasteryBook masteryBook = await client.InvokeCached<MasteryBook>("storage.get", objArray); string activeId = masteryBook.ActiveId; MasterySetup[] setups = masteryBook.Setups; variable = new { Local = true, ActiveId = activeId, Setups = from setup in (IEnumerable<MasterySetup>)setups select new { Id = setup.Id, Name = setup.Name, Masteries = from mastery in (IEnumerable<Mastery>)setup.Masteries select new { Id = mastery.Id, Points = mastery.Rank } } }; } return variable; }
private static MasteryBookPageDTO ToMasteryBookPage(MasterySetup setup) { IEnumerable<TalentEntry> masteries = from x in (IEnumerable<Mastery>)setup.Masteries select new TalentEntry() { TalentId = x.Id, Rank = x.Rank }; MasteryBookPageDTO masteryBookPageDTO = new MasteryBookPageDTO() { Name = setup.Name, TalentEntries = masteries.ToList<TalentEntry>(), Current = false }; return masteryBookPageDTO; }
private static MasteryBookPageDTO ToMasteryBookPage(MasterySetup setup) { IEnumerable<TalentEntry> source = Enumerable.Select<Mastery, TalentEntry>((IEnumerable<Mastery>) setup.Masteries, (Func<Mastery, TalentEntry>) (x => new TalentEntry() { TalentId = x.Id, Rank = x.Rank })); MasteryBookPageDTO masteryBookPageDto = new MasteryBookPageDTO(); masteryBookPageDto.Name = setup.Name; masteryBookPageDto.TalentEntries = Enumerable.ToList<TalentEntry>(source); masteryBookPageDto.Current = false; return masteryBookPageDto; }
/// <summary> /// Selects the default mastery book /// </summary> /// <param name="page">The mastery book to select</param> /// <returns></returns> public Task <object> SelectDefaultMasteryBookPage(MasteryBookPageDTO page) { return(InvokeAsync <object>("selectDefaultMasteryBookPage", page)); }