diff --git a/CardSharp.GUI/Program.cs b/CardSharp.GUI/Program.cs index 4d1a574..213553b 100644 --- a/CardSharp.GUI/Program.cs +++ b/CardSharp.GUI/Program.cs @@ -16,8 +16,8 @@ static void Main(string[] args) { while (true) { - //RunTest(); - RunAutoTest(); + RunTest(); + //RunAutoTest(); } } diff --git a/CardSharp/GameComponents/Card.cs b/CardSharp/GameComponents/Card.cs index 4f2f0c5..d9662d4 100644 --- a/CardSharp/GameComponents/Card.cs +++ b/CardSharp/GameComponents/Card.cs @@ -135,8 +135,8 @@ private static unsafe List ExtractCardGroupsInternal(this List { var enumerable = cards; var cardnums = enumerable.Select(card => (int) card.Amount); - var length = enumerable.Last().Amount + 1; - var array = stackalloc int[keepZero ? 15 : length]; + var length = keepZero ? 15 : enumerable.Last().Amount + 1; + var array = stackalloc int[length]; SetAll0(array, length); foreach (var num in cardnums) array[num]++; var o = new List(length); diff --git a/CardSharp/GameSteps/LandlordDiscuss.cs b/CardSharp/GameSteps/LandlordDiscuss.cs index 71cc960..1f503de 100644 --- a/CardSharp/GameSteps/LandlordDiscuss.cs +++ b/CardSharp/GameSteps/LandlordDiscuss.cs @@ -20,9 +20,16 @@ public LandlordDiscuss(IEnumerable landlordCards, Desk desk) public void Prepare(Desk desk) { +#if DEBUG + if (desk.CurrentPlayer is FakePlayer) { + Parse(desk, desk.CurrentPlayer, "抢"); + } +#else if (desk.CurrentPlayer is FakePlayer) { Parse(desk, desk.CurrentPlayer, "不抢"); } +#endif + } public void Parse(Desk desk, Player player, string command)