public TeamDetails(Team team) : base() { this._team = team; this._anal = team.GetAnalysis(); InitializeComponent(); grd_players.ItemsSource = team.Roster.Values; lbl_analysis.Content = _anal; }
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; }
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(); } } }
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); }
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() + "]"; }
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(); }