public MainViewModel() { //cost in names//index equal to cost int[] manaCurves = ProbabilityCalculation.GetCurves(); if (manaCurves == null) { return; } for (int i = 0; i < 11; i++) { int currentCost = i; ManaCurve curvei = new ManaCurve { Amount = manaCurves[i], Name = currentCost.ToString() }; ManaCurves.Add(curvei); } }
public CoachWindow() { ResourceDictionary Controls = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml", UriKind.Absolute) }; ResourceDictionary Fonts = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml", UriKind.Absolute) }; ResourceDictionary Colors = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml", UriKind.Absolute) }; ResourceDictionary BlueAccent = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml", UriKind.Absolute) }; ResourceDictionary BaseLightAccent = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml", UriKind.Absolute) }; Application.Current.Resources.MergedDictionaries.Add(Fonts); Application.Current.Resources.MergedDictionaries.Add(Colors); Application.Current.Resources.MergedDictionaries.Add(BlueAccent); Application.Current.Resources.MergedDictionaries.Add(BaseLightAccent); Application.Current.Resources.MergedDictionaries.Add(Controls); InitializeComponent(); textBox1.IsReadOnly = true; DataContext = new MainViewModel(); minProb_procBar.Value = ValueReader.MinProbabilityToReplace; minProb_lbl.Content = ValueReader.MinProbabilityToReplace + " %"; ProbabilityCalculation probabilityCalculation = new ProbabilityCalculation(); Tuple <int, float> treeResult = probabilityCalculation.GenerateTreeWhiteListDraw(); realProb_procBar.Value = treeResult.Item2; realProb_lbl.Content = treeResult.Item2; int normalMinionCount = MainLists.HandCards_BoardCards.Count(x => new NeutralMinion(x).minionBoardCard != null && NeutralMinion.WouldTakeMinion(x) && !MainLists.whiteList.Contains(x.Id.ToString())); //less medium cards than actually having possible if (treeResult.Item1 /*prospective refused*/ < normalMinionCount) { int deltaReplaceCount = normalMinionCount - treeResult.Item1; int i = 1; // ReSharper disable once LoopCanBePartlyConvertedToQuery foreach (CardTemplate badCard in MainLists.HandCards_BoardCards. Where(x => new NeutralMinion(x).minionBoardCard != null && NeutralMinion.WouldTakeMinion(x) && !MainLists.whiteList.Contains(x.Id.ToString())). OrderBy(x => new NeutralMinion(x).thisCardValue).TakeWhile(x => i <= deltaReplaceCount)) { string cardString = badCard.Name + " (" + badCard.Id + ")"; textBox1.AppendText(cardString + "\n"); ++i; } replaceCount_info.Content = "...by being able to replace " + deltaReplaceCount + " cards in hand"; } }
public CoachWindow() { ResourceDictionary Controls = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml", UriKind.Absolute) }; ResourceDictionary Fonts = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml", UriKind.Absolute) }; ResourceDictionary Colors = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml", UriKind.Absolute) }; ResourceDictionary BlueAccent = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml", UriKind.Absolute) }; ResourceDictionary BaseLightAccent = new ResourceDictionary { Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml", UriKind.Absolute) }; Application.Current.Resources.MergedDictionaries.Add(Fonts); Application.Current.Resources.MergedDictionaries.Add(Colors); Application.Current.Resources.MergedDictionaries.Add(BlueAccent); Application.Current.Resources.MergedDictionaries.Add(BaseLightAccent); Application.Current.Resources.MergedDictionaries.Add(Controls); InitializeComponent(); textBox1.IsReadOnly = true; DataContext = new MainViewModel(); minProb_procBar.Value = ValueReader.MinProbabilityToReplace; minProb_lbl.Content = ValueReader.MinProbabilityToReplace + " %"; ProbabilityCalculation probabilityCalculation = new ProbabilityCalculation(); Tuple<int, float> treeResult = probabilityCalculation.GenerateTreeWhiteListDraw(); realProb_procBar.Value = treeResult.Item2; realProb_lbl.Content = treeResult.Item2; int normalMinionCount = MainLists.HandCards_BoardCards.Count(x => new NeutralMinion(x).minionBoardCard != null && NeutralMinion.WouldTakeMinion(x) && !MainLists.whiteList.Contains(x.Id.ToString())); //less medium cards than actually having possible if (treeResult.Item1 /*prospective refused*/ < normalMinionCount) { int deltaReplaceCount = normalMinionCount - treeResult.Item1; int i = 1; // ReSharper disable once LoopCanBePartlyConvertedToQuery foreach (CardTemplate badCard in MainLists.HandCards_BoardCards. Where(x => new NeutralMinion(x).minionBoardCard != null && NeutralMinion.WouldTakeMinion(x) && !MainLists.whiteList.Contains(x.Id.ToString())). OrderBy(x => new NeutralMinion(x).thisCardValue).TakeWhile(x => i <= deltaReplaceCount)) { string cardString = badCard.Name + " (" + badCard.Id + ")"; textBox1.AppendText(cardString + "\n"); ++i; } replaceCount_info.Content = "...by being able to replace " + deltaReplaceCount + " cards in hand"; } }