This commit is contained in:
2022-07-09 21:36:51 +10:00
parent 631ac0bf12
commit 25837857ca

View File

@@ -7,39 +7,18 @@ namespace StripJackNaked
public const int PlayerCount = 2; public const int PlayerCount = 2;
} }
public class Kitty internal class Kitty
{ {
public static List<Card> Pile = new(); public static List<Card> Pile = new();
} }
public class Player internal class Player
{ {
public List<Card> Hand = new(); public List<Card> Hand = new();
} }
class Program internal class Program
{ {
public static int NextPlayer(int CurrentPlayer) { return ++CurrentPlayer % Constants.PlayerCount; }
public static bool PlayCard(List<Card> From) { return Actions.MoveCard(From, Kitty.Pile); }
public static void TakePile(List<Card> Winner)
{
while (Kitty.Pile.Count() > 0)
{
_ = Actions.MoveCard(Kitty.Pile, Winner);
}
}
public static void ShowList(List<Card> Cards)
{
foreach (Card card in Cards)
{
Console.Write(card.NamedValue + ((card == Cards.LastOrDefault()) ? "" : ", "));
}
Console.WriteLine();
}
private static void Main() private static void Main()
{ {
// Init players // Init players
@@ -63,7 +42,7 @@ namespace StripJackNaked
// Init first round // Init first round
int CardsToDraw = 1; int CardsToDraw = 1;
Card ActivePictureCard = null; Card? ActivePictureCard = null;
int ActivePlayer = 0; // Player 0 goes first int ActivePlayer = 0; // Player 0 goes first
@@ -113,5 +92,32 @@ namespace StripJackNaked
} }
Console.WriteLine("Player " + NextPlayer(ActivePlayer) + " Won!"); Console.WriteLine("Player " + NextPlayer(ActivePlayer) + " Won!");
} }
private static int NextPlayer(int CurrentPlayer)
{
return ++CurrentPlayer % Constants.PlayerCount;
}
private static bool PlayCard(List<Card> From)
{
return Actions.MoveCard(From, Kitty.Pile);
}
private static void TakePile(List<Card> Winner)
{
while (Kitty.Pile.Count() > 0)
{
_ = Actions.MoveCard(Kitty.Pile, Winner);
}
}
private static void ShowList(List<Card> Cards)
{
foreach (Card card in Cards)
{
Console.Write(card.NamedValue + ((card == Cards.LastOrDefault()) ? "" : ", "));
}
Console.WriteLine();
}
} }
} }