diff --git a/DrawPool/DisplayControl.xaml b/DrawPool/DisplayControl.xaml
index 0238c34..e600d5d 100644
--- a/DrawPool/DisplayControl.xaml
+++ b/DrawPool/DisplayControl.xaml
@@ -9,6 +9,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:props="clr-namespace:DrawPool.Properties"
xmlns:themes="clr-namespace:Hearthstone_Deck_Tracker.Utility.Themes;assembly=HearthstoneDeckTracker"
+ VerticalAlignment="Top"
FontStretch="Normal"
Grid.IsSharedSizeScope="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
@@ -21,14 +22,11 @@
-
-
+
diff --git a/DrawPool/DrawLogic/ElvenMinstrelControl.cs b/DrawPool/DrawLogic/ElvenMinstrelControl.cs
index ef45b68..620bd82 100644
--- a/DrawPool/DrawLogic/ElvenMinstrelControl.cs
+++ b/DrawPool/DrawLogic/ElvenMinstrelControl.cs
@@ -41,7 +41,7 @@ public ElvenMinstrelControl()
/// Returns the list of Minions Grouped by their Counts, for statistical purposes.
///
/// The list of Minions Grouped by their Counts, for statistical purposes
- internal List> GroupedMinion() => QueryDeck.GroupBy(c => c.Count).OrderByDescending(grp => grp.Count()).ToList();
+ internal List> GroupedMinion() => QueryDeck.GroupBy(c => c.Count).OrderByDescending(grp => grp.Count()).OrderBy(g => g.Key).ToList();
///
@@ -60,27 +60,18 @@ public void DoMath()
lblDeckMix.Content = WriteDeckMix(MinionCount(), Core.Game.Player.DeckCount);
if (MinionCount() >= 1)
{
+ lblProbability.Content = "";
var gm = GroupedMinion();
// Next, figure out our odds
- lblProbability.Content = WriteDrawProbability(
- gm.First>().First().Count,
- MinionCount(),
- 2);
+ lblProbability.Content = WriteDrawProbability(gm.First>().First().Count, MinionCount(), 2);
if (gm.Count >= 2)
{
lblProbability.Content += " ";
- lblProbability.Content += WriteDrawProbability(
- gm[1].First().Count,
- MinionCount(),
- 2);
-
+ lblProbability.Content += WriteDrawProbability(gm[1].First().Count, MinionCount(), 2);
if (gm.Count >= 3)
{
lblProbability.Content += " ";
- lblProbability.Content += WriteDrawProbability(
- gm.Last>().First().Count,
- MinionCount(),
- 2);
+ lblProbability.Content += WriteDrawProbability(gm.Last>().First().Count, MinionCount(), 2);
}
}
}
@@ -129,7 +120,11 @@ public List BuildQueryDeck()
c.Type == "Minion" &&
(c.Count - c.InHandCount) > 0
)
- .ToList().FixCreatedCards();
+ .OrderBy(c => c.Cost)
+ .ThenBy(c => c.Count)
+ .ThenBy(c => c.Name)
+ .ToList()
+ .FixCreatedCards();
var dups = playerDeck
.GroupBy(c => c.Id)
@@ -151,7 +146,7 @@ public List BuildQueryDeck()
}
}
playerDeck.RemoveAll(c => c.Count == 0);
- return playerDeck.ToList();
+ return playerDeck;
}
}
}
\ No newline at end of file
diff --git a/DrawPool/DrawLogic/WhichwoodPiper.cs b/DrawPool/DrawLogic/WhichwoodPiper.cs
deleted file mode 100644
index 2c067be..0000000
--- a/DrawPool/DrawLogic/WhichwoodPiper.cs
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace DrawPool
-{
- internal class WhichwoodPiper : IDraw
- {
- public string CardId { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
- }
-}
\ No newline at end of file
diff --git a/DrawPool/DrawLogic/WitchWoodPiperControl.cs b/DrawPool/DrawLogic/WitchWoodPiperControl.cs
index e7b3447..208c669 100644
--- a/DrawPool/DrawLogic/WitchWoodPiperControl.cs
+++ b/DrawPool/DrawLogic/WitchWoodPiperControl.cs
@@ -48,14 +48,18 @@ public WitchWoodPiperControl()
/// The scoped list of Cards
internal List BuildQueryDeck()
{
- return Core.Game.Player.PlayerCardList
- .Where(c => c.Type == "Minion" && (c.Count - c.InHandCount) > 0)
- .OrderBy(c => c.Cost)
- .ThenBy(c => c.Count)
- .ThenBy(c => c.Name)
- .GroupBy(c => c.Cost)
- .First()
- .ToList();
+ var cd= Core.Game.Player.PlayerCardList
+ .Where(
+ c => c.Type == "Minion"
+ && (c.Count - c.InHandCount) > 0
+ )
+ .OrderBy(c => c.Cost)
+ .ThenBy(c => c.Count)
+ .ThenBy(c => c.Name)
+ .GroupBy(c => c.Cost)
+ .First()
+ .ToList();
+ return cd;
}
///
@@ -71,18 +75,24 @@ public void DoMath()
{
lblProbability.Content = "";
lblDeckMix.Content = WriteDeckMix(MinionCount(), Core.Game.Player.DeckCount);
- if (QueryDeck.Count == 1 || QueryDeck.Count== MinionCount())
+ if (QueryDeck.Count == 1 || QueryDeck.Count == MinionCount())
{
lblProbability.Content = WriteDrawProbability(1, MinionCount(), 1);
}
- else if (QueryDeck.Count >= 2)
- {
- lblProbability.Content += " ";
- lblProbability.Content += WriteDrawProbability(QueryDeck[1].Count, MinionCount(), 1);
- if (QueryDeck.Count > 3)
+ else {
+ if (QueryDeck.Count >= 1)
+ {
+ lblProbability.Content = WriteDrawProbability(1, MinionCount(), 1);
+ }
+ if (QueryDeck.Count >= 2)
{
lblProbability.Content += " ";
- lblProbability.Content += WriteDrawProbability(QueryDeck.Last().Count, MinionCount(), 1);
+ lblProbability.Content += WriteDrawProbability(QueryDeck[1].Count, MinionCount(), 1);
+ if (QueryDeck.Count >= 3)
+ {
+ lblProbability.Content += " ";
+ lblProbability.Content += WriteDrawProbability(QueryDeck.Last().Count, MinionCount(), 1);
+ }
}
}
}
diff --git a/DrawPool/DrawPoolWindow.xaml b/DrawPool/DrawPoolWindow.xaml
index 061e6e6..8f7efd1 100644
--- a/DrawPool/DrawPoolWindow.xaml
+++ b/DrawPool/DrawPoolWindow.xaml
@@ -13,14 +13,12 @@
xmlns:themes="clr-namespace:Hearthstone_Deck_Tracker.Utility.Themes;assembly=HearthstoneDeckTracker"
Title="Drawpool"
MinWidth="200"
- MinHeight="200"
+ MinHeight="150"
MaxWidth="300"
Padding="0"
AutomationProperties.Name="Drawpool"
BorderThickness="1"
Focusable="True"
- FontFamily="Segoe UI Semibold"
- Foreground="White"
Grid.IsSharedSizeScope="True"
IsCloseButtonEnabled="False"
IsMaxRestoreButtonEnabled="False"
@@ -41,7 +39,7 @@
SizeToContent="WidthAndHeight"
SnapsToDevicePixels="True"
TextOptions.TextFormattingMode="Display"
- TitleAlignment="Center"
+ TitleAlignment="Left"
TitleCaps="False"
Top="{Binding Source={x:Static props:Settings.Default}, Path=Top, Mode=TwoWay}"
Topmost="True">
@@ -70,6 +68,7 @@
diff --git a/DrawPool/UserOptionsControl.xaml b/DrawPool/UserOptionsControl.xaml
index 4976660..dc457a1 100644
--- a/DrawPool/UserOptionsControl.xaml
+++ b/DrawPool/UserOptionsControl.xaml
@@ -11,6 +11,7 @@
xmlns:props="clr-namespace:DrawPool.Properties"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
MinWidth="200"
+ MinHeight="150"
Margin="2"
Background="Transparent"
Grid.IsSharedSizeScope="True"
diff --git a/ReadMe.md b/ReadMe.md
index 84fd6d6..0afa78b 100644
--- a/ReadMe.md
+++ b/ReadMe.md
@@ -33,4 +33,7 @@ I hope to add in the mechanics for [Recruit](https://hearthstone.gamepedia.com/R
## Configuration
-You can set where the window is displayed when the player hand hovers over the trigger card from the Options => Plug-in menu
\ No newline at end of file
+
+* You can see and/or set where the window is displayed when the player hand hovers over the trigger card from the Options => Plug-in menu
+
+* You can also set the windows opacity, as well as which Drawpool modules to use.
diff --git a/images/DrawpoolOptions.png b/images/DrawpoolOptions.png
new file mode 100644
index 0000000..f3ebcbc
Binary files /dev/null and b/images/DrawpoolOptions.png differ
diff --git a/images/MinstrelDisplaySample.png b/images/MinstrelDisplaySample.png
index 177c85a..7acd60a 100644
Binary files a/images/MinstrelDisplaySample.png and b/images/MinstrelDisplaySample.png differ
diff --git a/images/PiperDisplaySample.png b/images/PiperDisplaySample.png
index 91709c7..30db31e 100644
Binary files a/images/PiperDisplaySample.png and b/images/PiperDisplaySample.png differ