public TeamDetails(Team team) : base()
        {
            this._team = team;
            this._anal = team.GetAnalysis();

            InitializeComponent();

            grd_players.ItemsSource = team.Roster.Values;
            lbl_analysis.Content    = _anal;
        }
Esempio n. 2
0
 public static TeamAnalysis GetTeamGradeAnalysis(Team team)
 {
     TeamAnalysis analysis = new TeamAnalysis();
     int cumGrade = 0;
     foreach (Game game in team.GetGames()) {
         TeamGameAnalysis teamGameAnalysis = new TeamGameAnalysis(team, game);
         cumGrade += teamGameAnalysis.GameGrade;
         teamGameAnalysis.CumulativeGrade = cumGrade;
         analysis.AddTeamGameAnalysis(teamGameAnalysis);
     }
     return analysis;
 }
Esempio n. 3
0
        private void OnLaunchTeamStatCenter(object sender, EventArgs e)
        {
            ListView lv = sender as ListView;

            if (lv.SelectedItems.Count == 1)
            {
                TeamAnalysis team = lv.SelectedItems[0].Tag as TeamAnalysis;
                if (team != null)
                {
                    new TeamStatCenter(this.league, team).Show();
                }
            }
        }
Esempio n. 4
0
        public void UpdateTeamsTab()
        {
            Team         selected         = TeamSelectionList.SelectedItem as Team;
            TeamAnalysis selectedAnalysis = FrcAnalysis.LoadTeam(selected.Number);

            if (selected == null)
            {
                Util.DebugLog(LogLevel.Error, "ANALYSIS",
                              "Selected team was null or not a team at all.");
            }

            UpdateTeamSummary(selected);
            UpdateTeamAnalysis(selected, selectedAnalysis);
        }
Esempio n. 5
0
        private void UpdateTeamAnalysis(Team team, TeamAnalysis analysis)
        {
            if (team == null || analysis == null)
            {
                TeamWorkingTxt.Text       = "NULL";
                TeamWorkingTxt.Foreground = new SolidColorBrush(TITLE_GRAY);

                WinrateValText.Text = "NULL";
                WinRateZText.Text   = "NULL";

                ScoredPointsValText.Text = "NULL";
                ScoredPointsZText.Text   = "NULL";

                FinalScoreValText.Text = "NULL";
                FinalScoreZText.Text   = "NULL";

                PenaltiesValText.Text = "NULL";
                PenaltiesZText.Text   = "NULL";

                DefenseValText.Text = "NULL";
                DefenseZText.Text   = "NULL";

                ResponsivenessValText.Text = "NULL";
                ResponsivenessZText.Text   = "NULL";
                return;
            }

            TeamWorkingTxt.Text       = analysis.WorkingCurrently ? "WORKING" : "MALFUNCTIONING";
            TeamWorkingTxt.Foreground = new SolidColorBrush(
                analysis.WorkingCurrently ? WORKING_GREEN : MALFUNCTIONING_RED);

            WinrateValText.Text = analysis.WinRate.ToStringPct();
            WinRateZText.Text   = "[z = " + analysis.WinRateZ.ToString() + "]";

            ScoredPointsValText.Text = analysis.ScoredPoints.ToString();
            ScoredPointsZText.Text   = "[z = " + analysis.ScoredPoints.CenterZScore.ToString() + "]";

            FinalScoreValText.Text = analysis.FinalScore.ToString();
            FinalScoreZText.Text   = "[z = " + analysis.FinalScore.CenterZScore.ToString() + "]";

            PenaltiesValText.Text = analysis.Penalties.ToString();
            PenaltiesZText.Text   = "[z = " + analysis.Penalties.CenterZScore.ToString() + "]";

            DefenseValText.Text = analysis.Defense.ToString();
            DefenseZText.Text   = "[z = " + analysis.Defense.CenterZScore.ToString() + "]";

            ResponsivenessValText.Text = analysis.ResponsivenessRate.ToStringPct();
            ResponsivenessZText.Text   = "[z = " + analysis.ResponsivenessRateZ.ToString() + "]";
        }
Esempio n. 6
0
        public TeamStatCenter(League league, TeamAnalysis team)
        {
            InitializeComponent();
            this.Text = string.Format("Team Stat Center: {0}", team.Team.Name);

            LeagueConstants lc = LeagueConstants.For(league.FantasyLeague);

            this.lv.BeginUpdate();
            int columnWidth = lv.Width / (lc.ScoringStatExtractors.Count + 2);

            lv.Columns.Add("Player Name", columnWidth);
            lv.Columns.Add("Player Status", columnWidth);
            foreach (IStatExtractor extractor in lc.ScoringStatExtractors)
            {
                ColumnHeader column = new ColumnHeader();
                column.Text  = extractor.StatName;
                column.Width = columnWidth;
                lv.Columns.Add(column);
            }

            Dictionary <string, int> statToPlayerCount = new Dictionary <string, int>();

            foreach (IPlayer player in team.Players)
            {
                ListViewItem item = new ListViewItem(player.Name);
                item.SubItems.Add(player.Status);
                foreach (IStatExtractor extractor in lc.ScoringStatExtractors)
                {
                    IStatValue value = extractor.Extract(player);
                    if (value != null)
                    {
                        item.SubItems.Add(value.Value.ToString());
                        if (!statToPlayerCount.ContainsKey(extractor.StatName))
                        {
                            statToPlayerCount[extractor.StatName] = 1;
                        }
                        else
                        {
                            statToPlayerCount[extractor.StatName]++;
                        }
                    }
                    else
                    {
                        item.SubItems.Add(string.Empty);
                    }
                }
                this.lv.Items.Add(item);
            }

            ListViewItem total   = new ListViewItem("Totals");
            ListViewItem average = new ListViewItem("Average");

            total.SubItems.Add(string.Empty);   // player status
            average.SubItems.Add(string.Empty); // player status
            foreach (IStatExtractor extractor in lc.ScoringStatExtractors)
            {
                float value;
                if (team.Stats.TryGetValue(extractor.StatName, out value))
                {
                    total.SubItems.Add(value.ToString());
                    int count;
                    if (statToPlayerCount.TryGetValue(extractor.StatName, out count))
                    {
                        average.SubItems.Add((value / (float)count).ToString());
                    }
                    else
                    {
                        average.SubItems.Add(string.Empty);
                    }
                }
                else
                {
                    total.SubItems.Add(string.Empty);
                    average.SubItems.Add(string.Empty);
                }
            }
            this.lv.Items.Add(total);
            this.lv.Items.Add(average);
            this.lv.EndUpdate();
        }