private void UpdateRunes() { if (!DataDragon.IsCurrent) { return; } int i = 0; for (; i < 9; i++) { Runes[i].Source = new BitmapImage(new Uri("pack://application:,,,/RiotAPI;component/Resources/MarkDefault.png")); } for (; i < 18; i++) { Runes[i].Source = new BitmapImage(new Uri("pack://application:,,,/RiotAPI;component/Resources/SealDefault.png")); } for (; i < 27; i++) { Runes[i].Source = new BitmapImage(new Uri("pack://application:,,,/RiotAPI;component/Resources/GlyphDefault.png")); } for (; i < 30; i++) { Runes[i].Source = new BitmapImage(new Uri($"pack://application:,,,/RiotAPI;component/Resources/Quint{i - 26}Default.png")); } foreach (var entry in page.SlotEntries) { var rune = Runes[entry.RuneSlotId - 1]; var data = DataDragon.RuneData.Value.data[entry.rune.ItemId.ToString()]; rune.Source = DataDragon.GetRuneImage(data).Load(); rune.Tag = entry; var grid = new Grid(); grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto }); grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto }); var title = new Label { HorizontalAlignment = HorizontalAlignment.Center, Content = data.name }; var detail = new TextBlock { HorizontalAlignment = HorizontalAlignment.Center, Text = data.description }; grid.Children.Add(title); grid.Children.Add(detail); Grid.SetRow(detail, 1); rune.ToolTip = grid; } MarksList.Children.Clear(); SealsList.Children.Clear(); GlyphsList.Children.Clear(); QuintsList.Children.Clear(); foreach (var rune in runes) { var data = DataDragon.RuneData.Value.data[rune.RuneId.ToString()]; int used = page.SlotEntries.Count(r => r.RuneId == rune.RuneId); if (rune.Quantity - used > 0) { var item = new RuneListItem(rune, rune.Quantity - used); item.MouseUp += RuneListItem_Click; switch (data.rune.type) { case "red": MarksList.Children.Add(item); break; case "yellow": SealsList.Children.Add(item); break; case "blue": GlyphsList.Children.Add(item); break; case "black": QuintsList.Children.Add(item); break; } } } }
private void UpdateRunes() { if (!DataDragon.IsCurrent) return; int i = 0; for (; i < 9; i++) Runes[i].Source = new BitmapImage(new Uri("pack://application:,,,/RiotAPI;component/Resources/MarkDefault.png")); for (; i < 18; i++) Runes[i].Source = new BitmapImage(new Uri("pack://application:,,,/RiotAPI;component/Resources/SealDefault.png")); for (; i < 27; i++) Runes[i].Source = new BitmapImage(new Uri("pack://application:,,,/RiotAPI;component/Resources/GlyphDefault.png")); for (; i < 30; i++) Runes[i].Source = new BitmapImage(new Uri($"pack://application:,,,/RiotAPI;component/Resources/Quint{i - 26}Default.png")); foreach (var entry in page.SlotEntries) { var rune = Runes[entry.RuneSlotId - 1]; var data = DataDragon.RuneData.Value.data[entry.rune.ItemId.ToString()]; rune.Source = DataDragon.GetRuneImage(data).Load(); rune.Tag = entry; var grid = new Grid(); grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto }); grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto }); var title = new Label { HorizontalAlignment = HorizontalAlignment.Center, Content = data.name }; var detail = new TextBlock { HorizontalAlignment = HorizontalAlignment.Center, Text = data.description }; grid.Children.Add(title); grid.Children.Add(detail); Grid.SetRow(detail, 1); rune.ToolTip = grid; } MarksList.Children.Clear(); SealsList.Children.Clear(); GlyphsList.Children.Clear(); QuintsList.Children.Clear(); foreach (var rune in runes) { var data = DataDragon.RuneData.Value.data[rune.RuneId.ToString()]; int used = page.SlotEntries.Count(r => r.RuneId == rune.RuneId); if (rune.Quantity - used > 0) { var item = new RuneListItem(rune, rune.Quantity - used); item.MouseUp += RuneListItem_Click; switch (data.rune.type) { case "red": MarksList.Children.Add(item); break; case "yellow": SealsList.Children.Add(item); break; case "blue": GlyphsList.Children.Add(item); break; case "black": QuintsList.Children.Add(item); break; } } } }