Esempio n. 1
0
        public void LoadFeatured(GameList game)
        {
            try
            {
                CurrentGame = game;
                ginfo.Text  = RiotTool.ToMapString((RiotSharp.MapType)game.mapId) + ", " + RiotTool.ToQueueString((RiotSharp.MatchEndpoint.QueueType)game.gameQueueConfigId) + " - " + RiotTool.PlatformToString(game.platformId);
                TimeSpan ts = new TimeSpan(game.gameLength * TimeSpan.TicksPerSecond);

                starttime = DateTime.Now.Subtract(ts);

                //              starttime = GetGameTime((long)game.gameStartTime, game.platformId.ToUpper());


                foreach (RiotSharp.Featured.Participant p in game.participants)
                {
                    AddPlayer((p.teamId == 200), p.summonerName, p.championId);
                }
            }
            catch
            {
            }
        }
Esempio n. 2
0
        public void SetHome(GhostReplay rep, string gid, string reg)
        {
            try
            {
                HomePage = global::GhostReplays.Properties.Resources.HOME;
                HomePage = HomePage.Replace("{$.gid.$}", gid).Replace("{$.reg.$}", reg);
                if (rep.GameStats != null)
                {
                    HomePage = HomePage.Replace("{$.map.$}", RiotTool.ToMapString((RiotSharp.MapType)rep.PlayerInfos.Map));
                    HomePage = HomePage.Replace("{$.queue.$}", rep.GameStats.QueueType);
                    string dur = string.Format("{0:0}:{1:00}", rep.GameLength.Minutes, rep.GameLength.Seconds);
                    HomePage = HomePage.Replace("{$.glength.$}", dur);
                    HomePage = HomePage.Replace("{$.mplayer.$}", rep.SummonerName);
                    if (IsWon(100, rep))
                    {
                        HomePage = HomePage.Replace("{$.winner.$}", "Blue Team");
                    }

                    else
                    {
                        HomePage = HomePage.Replace("{$.winner.$}", "Red Team");
                    }
                }
                else
                {
                    HomePage = HomePage.Replace("{$.map.$}", "Unknown");
                    HomePage = HomePage.Replace("{$.queue.$}", "Unknown");
                    string dur = string.Format("{0:0}:{1:00}", rep.GameLength.Minutes, rep.GameLength.Seconds);
                    HomePage = HomePage.Replace("{$.glength.$}", dur);
                    HomePage = HomePage.Replace("{$.mplayer.$}", rep.SummonerName);

                    HomePage = HomePage.Replace("{$.winner.$}", "Unknown");
                }
            }
            catch
            {
            }
        }
        public void LoadGame(EndOfGameStats eog, GameMetaData meta, BasicInfo pi, bool bluewin)
        {
            try
            {
                //   RiotSharp.MatchEndpoint.MatchDetail m = Program.MainFormInstance.API.GetMatch(RiotTool.PlatformToRegion(meta.gameKey.platformId), (long)eog.GameId);

                TeamStats blueteam = new TeamStats();
                TeamStats redteam  = new TeamStats();
                BluePanel.Controls.Clear();
                RedPanel.Controls.Clear();
                if (!bluewin)
                {
                    metroLabel1.Text  = "Red Team Wins";
                    metroLabel1.Style = MetroFramework.MetroColorStyle.Red;
                }
                if (meta.gameKey.platformId != "PBE1")
                {
                    ginfo.Text = RiotTool.ToMapString((RiotSharp.MapType)pi.Map) + ", " + RiotTool.ToQueueString((QueueType)pi.Queue) + " - " + RiotTool.PlatformToRegion(meta.gameKey.platformId).ToString().ToUpper();
                }
                else
                {
                    ginfo.Text = eog.GameMode + ", " + eog.GameType.Replace("_", " ") + " - " + RiotTool.PlatformToRegion(meta.gameKey.platformId).ToString().ToUpper();
                }
                if (eog != null)
                {
                    foreach (PlayerParticipantStatsSummary p in eog.TeamPlayerParticipantStats)
                    {
                        Player2Ctrl p2 = new Player2Ctrl(p.TeamId == 200);

                        p2.LoadPlayer(p, p.SummonerName, p.SkinName, ref blueteam);
                        p2.Dock = DockStyle.Top;
                        if (p.TeamId == 100)
                        {
                            BluePanel.Controls.Add(p2);
                        }
                        else
                        {
                            RedPanel.Controls.Add(p2);
                        }
                    }
                    foreach (PlayerParticipantStatsSummary p in eog.OtherTeamPlayerParticipantStats)
                    {
                        Player2Ctrl p2 = new Player2Ctrl(p.TeamId == 200);

                        p2.LoadPlayer(p, p.SummonerName, p.SkinName, ref redteam);
                        p2.Dock = DockStyle.Top;
                        if (p.TeamId == 100)
                        {
                            BluePanel.Controls.Add(p2);
                        }
                        else
                        {
                            RedPanel.Controls.Add(p2);
                        }
                    }
                }

                bluewk.Text     = blueteam.WD.ToString();
                bluewp.Text     = blueteam.WP.ToString();
                bluecreeps.Text = blueteam.CREEPS.ToString();
                bluekda.Text    = blueteam.Kill + " / " + blueteam.Deaths + " / " + blueteam.Assists;
                bluetd.Text     = blueteam.TD.ToString();

                redwk.Text     = redteam.WD.ToString();
                redwp.Text     = redteam.WP.ToString();
                redcreeps.Text = redteam.CREEPS.ToString();
                redkda.Text    = redteam.Kill + " / " + redteam.Deaths + " / " + redteam.Assists;
                redtd.Text     = redteam.TD.ToString();

                BluePanel.Controls.Add(panel5);
                RedPanel.Controls.Add(panel4);
            }
            catch (Exception ex)
            {
                Logger.Instance.Log.Error("Failed to load game", ex);
            }
        }
Esempio n. 4
0
        public void LoadGame(RootObject gameinfo, RiotSharp.RiotApi api, RiotSharp.Region reg, long sid)
        {
            try
            {
                BluePanel.BeginInvoke(new MethodInvoker(delegate
                {
                    BluePanel.Controls.Clear();
                    RedPanel.Controls.Clear();
                    ginfo.Text = RiotTool.ToMapString(gameinfo.MapType) + ", " + RiotTool.ToQueueString(gameinfo.gameQueueConfigId) + " - " + RiotTool.PlatformToString(gameinfo.platformId);
                    metroProgressSpinner1.Visible = true;


                    B1.Visible = (gameinfo.bannedChampions.Count != 0);
                    B2.Visible = (gameinfo.bannedChampions.Count != 0);
                    B3.Visible = (gameinfo.bannedChampions.Count != 0);
                    B4.Visible = (gameinfo.bannedChampions.Count != 0);
                    B5.Visible = (gameinfo.bannedChampions.Count != 0);
                    B6.Visible = (gameinfo.bannedChampions.Count != 0);


                    foreach (BannedChampion b in gameinfo.bannedChampions)
                    {
                        Image champ = Image.FromFile(Application.StartupPath + @"\Champions\" + CurrentGame.GetChampion(b.ChampionId) + ".png");
                        switch (b.PickTurn)
                        {
                        case 1:
                            B1.BackgroundImage = champ;
                            break;

                        case 3:
                            B2.BackgroundImage = champ;
                            break;

                        case 5:
                            B3.BackgroundImage = champ;
                            break;

                        case 2:
                            B4.BackgroundImage = champ;
                            break;

                        case 4:
                            B5.BackgroundImage = champ;
                            break;

                        case 6:
                            B6.BackgroundImage = champ;
                            break;
                        }
                    }
                }));
                int c = 0;

                frm.AnimationType = AnimatorNS.AnimationType.Mosaic;
                //foreach (Participant p in gameinfo.participants)
                //{
                ParallelLoopResult pr = Parallel.ForEach(gameinfo.participants, p =>
                {
                    Player pl = new Player(p.TeamId == 200);


                    pl.Dock          = DockStyle.Top;
                    LeaguePlayer pls = new LeaguePlayer();
                    pls.LoadPlayer(reg, api, p, CurrentGame.GetChampion(p.ChampionId));
                    if (pls.SummonerName == "Error occured")
                    {
                        pls.SummonerName = p.Name;
                    }
                    pl.LoadSummonerData(pls);
                    MetroPanel panel = null;
                    if (p.TeamId == 100)
                    {
                        panel = BluePanel;
                    }
                    else
                    {
                        panel = RedPanel;
                    }
                    pls.Dispose();
                    panel.Invoke(new MethodInvoker(delegate
                    {
                        //if (panel == BluePanel && p.TeamId != 100)
                        //    panel = RedPanel;
                        c++;
                        metroProgressSpinner1.Value = (int)((double)((double)c / (double)gameinfo.participants.Count) * 100);

                        panel.Controls.Add(pl);
                        //pl.Visible = false;

                        //frm.Show(pl, Program.MainFormInstance.MainTabControl.SelectedTab == Program.MainFormInstance.GameInfoTab);
                    }));

                    //   }
                });
                while (!pr.IsCompleted)
                {
                    Thread.Sleep(100);
                }

                RedPanel.Invoke(new MethodInvoker(delegate
                {
                    this.RedPanel.Controls.Add(this.RedBan);
                    this.BluePanel.Controls.Add(this.BlueBan);
                    metroProgressSpinner1.Visible = false;
                    metroProgressSpinner1.Value   = 1;
                }));

                Program.MainFormInstance.ShowInfo("Game info", "The current game info are ready to be viewed");
                if (SettingsManager.Settings.Speech)
                {
                    SoundPlayer sp = new SoundPlayer(Application.StartupPath + @"\Data\done.wav");
                    sp.Load();
                    sp.PlaySync();
                    sp.Dispose();
                }
                GC.Collect();
                GC.WaitForPendingFinalizers();
            }
            catch (Exception ex)
            {
                Logger.Instance.Log.Error("Failed to load game", ex);
            }
        }