public static FantasyTeam RunOptimizer(Player playerUpForAuction) { FantasyTeam mock = new FantasyTeam("mock"); foreach(string key in Brain.MyDraft.MyTeam.PercentageBudgetsByPosition.Keys) { mock.PercentageBudgetsByPosition.Add(key, Brain.MyDraft.MyTeam.PercentageBudgetsByPosition[key]); } foreach (Player p in Brain.MyDraft.MyTeam.Roster) { mock.addMockPlayer(p); } if(playerUpForAuction != null) { mock.addMockPlayer(playerUpForAuction); } foreach (string position in new string[]{"K","DST","TE","QB","RB","WR"}) { int numberPositionRosterSpots = mock.Roster.Count(p => p.Position.Equals(position)); OptimizePosition(mock, position, numberPositionRosterSpots); } return mock; }
public void DraftPlayer(Player draftedPlayer, FantasyTeam draftingTeam) { //string playerInfo = draftedPlayer.Full + ", " + draftedPlayer.Position + " - $" + draftedPlayer.Dollar; //int moneyAfterDrafting = draftingTeam.MoneyLeft - (16 - (Brain.myTeam.Roster.Count + 1) + draftedPlayer.Dollar); //bool canAffordToDraft = moneyAfterDrafting >= 0; //if (!canAffordToDraft) //{ // MessageBox.Show("Not Enough $$$"); //} //else //{ // Brain.myTeam.addPlayer(draftedPlayer); // if (Brain.lastFivePlayersDrafted.Count == 5) // { // Brain.lastFivePlayersDrafted.Remove(Brain.lastFivePlayersDrafted.ElementAt(0)); // Brain.lastFivePlayersDrafted.Add(draftedPlayer); // } // else // { // Brain.lastFivePlayersDrafted.Add(draftedPlayer); // } //} }
public void addMockPlayer(Player p) { if (p.First != null) { Roster.Add(p); MoneyLeft -= p.Dollar; ProjectedTotal += p.Points; int budgetPercentage = PercentageBudgetsByPosition[p.Position]; int dollarsLeft = GetMockBudgetDollarForPosition(p.Position); double dollarsAfterDraft = dollarsLeft - p.Dollar; if(dollarsAfterDraft < 0) { AdjustedCap += (int)dollarsAfterDraft; PercentageBudgetsByPosition[p.Position] = 0; } else { int newBudget = (int)(dollarsAfterDraft * 100 / Brain.MyDraft.LeagueSalarayCap); PercentageBudgetsByPosition[p.Position] = newBudget; } } }
public void addPlayer(Player playerToBeAdded) { if(playerToBeAdded.First != null) { if(!CanAfford(playerToBeAdded)) { MessageBox.Show("Not Enough Money!"); return; } Roster.Add(playerToBeAdded); MoneyLeft -= playerToBeAdded.Dollar; ProjectedTotal += playerToBeAdded.Points; } }
private void playerBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { if(playerBox.SelectedItem != null) { string selected = playerBox.SelectedItem.ToString(); string name = selected.Substring(0, selected.IndexOf(',')); current = copy.First(s => s.Full.Equals(name)); moneyBox.Text = current.Dollar.ToString(); pointsBox.Text = current.Points.ToString(); starCheck.IsChecked = current.Star; } }
public OptimalWindow(Player player = null) { InitializeComponent(); WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen; this.Width = System.Windows.SystemParameters.PrimaryScreenWidth; this.Height = System.Windows.SystemParameters.PrimaryScreenHeight - 30; InitializeTeamBox(); mockTeam = RunOptimizer(player); foreach(Player play in mockTeam.Roster) { AddPlayerToTeamBox(play); } // DisplayStatistics(); }
private void refresh() { current = new Player(); moneyBox.Text = string.Empty; pointsBox.Text = string.Empty; starCheck.IsChecked = false; srcBox.Text = string.Empty; searchButton.Content = "Search"; clear = false; pBoxRefresh(); }
public void updateTeamBox(Player p, FantasyTeam team) { string playerPosition = p.Position; IEnumerable<Label> correspondingLabels = panelTeam.Children.OfType<Label>().Where(label => label.Content.ToString().StartsWith(playerPosition)); Label nextOpenSlot = correspondingLabels.FirstOrDefault(lab => lab.Content.ToString().Split('-')[1].Length == 0); if (nextOpenSlot != null) { nextOpenSlot.Content += p.toTeam(); Label projectedTotalLabel = panelTeam.Children.OfType<Label>().First(label => label.Name.Equals("projTotal")); projectedTotalLabel.Content = "Proj. Total - " + team.ProjectedTotal + " pts"; } else { IEnumerable<Label> benchSlots = panelTeam.Children.OfType<Label>().Where(label => label.Content.ToString().StartsWith("BENCH")); nextOpenSlot = benchSlots.FirstOrDefault(lab => lab.Content.ToString().Length == 8); if (nextOpenSlot != null) { nextOpenSlot.Content += p.toTeam(); } } }
public void UpdateTeamBox(Player player) { StackPanel panelTeam = current.teamPanel; string playerPosition = player.Position; IEnumerable<Label> correspondingLabels = panelTeam.Children.OfType<Label>().Where(label => label.Content.ToString().StartsWith(playerPosition)); string first = correspondingLabels.First().Content.ToString(); Label nextOpenSlot = correspondingLabels.FirstOrDefault(lab => lab.Content.ToString().Split('-')[1].Length == 1); if (nextOpenSlot != null) { nextOpenSlot.Content += player.toTeam(); Label projectedTotalLabel = panelTeam.Children.OfType<Label>().First(label => label.Name.Equals("projTotal")); projectedTotalLabel.Content = "Proj. Total - " + Brain.MyDraft.MyTeam.ProjectedTotal + " pts"; } else { IEnumerable<Label> benchSlots = panelTeam.Children.OfType<Label>().Where(label => label.Content.ToString().StartsWith("BENCH")); nextOpenSlot = benchSlots.FirstOrDefault(lab => lab.Content.ToString().Split('-')[1].Length == 1); if (nextOpenSlot != null) { nextOpenSlot.Content += player.toTeam(); } } }
public void putPlayerUpForAuction(Player temp, double suggested) { Player currentPlayer = Brain.MyDraft.CurrentPlayerUpForAuction; current.upForLabel.Content = currentPlayer.Full + ", " + currentPlayer.Position; current.upForPanel.Opacity = 0; current.upForPanel.Visibility = Visibility.Visible; current.suggestedLabel.Content = "$" + suggested; GUI_Animations.Fade_In_Control(current.upForPanel, 600); }
public void updateLabels(Player temp) { current.nameLabel.Content = temp.Full + " - " + temp.Position; current.teamLabel.Content = temp.Club; current.dollarLabel.Content = "$" + temp.Dollar; int projectedPoints = temp.Points; double ppd = 0; if (temp.Dollar > 0) { ppd = projectedPoints / temp.Dollar; } current.ppdLabel.Content = "PPD - " + ppd; current.pointsLabel.Content = "PTS - " + projectedPoints; }
public void AddPlayerToTeamBox(Player playerToBeAdded) { string position = playerToBeAdded.Position; IEnumerable<Label> corresponding = panelTeam.Children.OfType<Label>().Where(label => label.Content.ToString().StartsWith(position)); Label nextSlot = corresponding.FirstOrDefault(lab => lab.Content.ToString().Length < 7); if (nextSlot != null) { nextSlot.Content += playerToBeAdded.toTeam(); Label projected = panelTeam.Children.OfType<Label>().Last(); projected.Content = "Proj. Total - " + mockTeam.ProjectedTotal + " pts"; } else { IEnumerable<Label> benchSlots = panelTeam.Children.OfType<Label>().Where(label => label.Content.ToString().StartsWith("BENCH")); nextSlot = benchSlots.FirstOrDefault(lab => lab.Content.ToString().Length == 8); if (nextSlot != null) { nextSlot.Content += playerToBeAdded.toTeam(); } } }
private bool CanAfford(Player player) { return (player.Dollar + (16 - Roster.Count) < MoneyLeft); }