public MatchDetails(RiotACS.Game game, RiotACS.Delta delta, Action back = null) { InitializeComponent(); this.back = back; if (back == null) BackButton.Visibility = Visibility.Collapsed; var blue = new List<object>(); var red = new List<object>(); foreach (var player in game.Participants) { var champ = DataDragon.GetChampData(player.ChampionId); var spell1 = DataDragon.GetSpellData(player.Spell1Id); var spell2 = DataDragon.GetSpellData(player.Spell2Id); var items = new[] { player.Stats.Item0, player.Stats.Item1, player.Stats.Item2, player.Stats.Item3, player.Stats.Item4, player.Stats.Item5, player.Stats.Item6 }; var item = new { ChampImage = DataDragon.GetChampIconImage(champ), Spell1Image = DataDragon.GetSpellImage(spell1), Spell2Image = DataDragon.GetSpellImage(spell2), Name = champ.name, Score = $"{player.Stats.Kills} / {player.Stats.Deaths} / {player.Stats.Assists}", Item0Image = DataDragon.GetItemImage(items[0]), Item1Image = DataDragon.GetItemImage(items[1]), Item2Image = DataDragon.GetItemImage(items[2]), Item3Image = DataDragon.GetItemImage(items[3]), Item4Image = DataDragon.GetItemImage(items[4]), Item5Image = DataDragon.GetItemImage(items[5]), Item6Image = DataDragon.GetItemImage(items[6]), CS = player.Stats.TotalMinionsKilled, Gold = (player.Stats.GoldEarned / 1000.0).ToString("#.#k") }; if (player.TeamId == 100) blue.Add(item); else red.Add(item); } BlueTeam.ItemsSource = blue; RedTeam.ItemsSource = red; }
public MatchHistoryItem() { InitializeComponent(); Loaded += (src, e) => { var game = DataContext as RiotACS.Game; var identity = game.ParticipantIdentities.FirstOrDefault(i => i.Player.AccountId == Session.Current.Account.AccountID); var me = game.Participants.FirstOrDefault(p => p.ParticipantId == identity.ParticipantId); var champ = DataDragon.GetChampData(me.ChampionId); var spell1 = DataDragon.GetSpellData(me.Spell1Id); var spell2 = DataDragon.GetSpellData(me.Spell2Id); ChampImage.Source = DataDragon.GetChampIconImage(champ).Load(); Spell1Image.Source = DataDragon.GetSpellImage(spell1).Load(); Spell2Image.Source = DataDragon.GetSpellImage(spell2).Load(); MapLabel.Content = DataDragon.GameMaps[game.MapId]; if (game.GameType.Equals("CUSTOM_GAME")) { ModeLabel.Content = "Custom"; } else if (game.GameType.Equals("TUTORIAL_GAME")) { ModeLabel.Content = "Tutorial"; } else { ModeLabel.Content = GameMode.Values[game.GameMode].Value; } var items = new[] { me.Stats.Item0, me.Stats.Item1, me.Stats.Item2, me.Stats.Item3, me.Stats.Item4, me.Stats.Item5, me.Stats.Item6 }; var images = new[] { Item0Image, Item1Image, Item2Image, Item3Image, Item4Image, Item5Image, Item6Image }; for (int i = 0; i < items.Length; i++) { images[i].Source = DataDragon.GetItemImage(items[i]).Load(); } ScoreLabel.Content = $"{me.Stats.Kills} / {me.Stats.Deaths} / {me.Stats.Assists}"; var date = Session.Epoch.AddMilliseconds(game.GameCreation); DateLabel.Content = date.ToString("M / d / yyyy"); TimeLabel.Content = date.ToString("h:mm tt"); }; }