Files
MauMau-Server/Mau/Deck.cs
2023-03-16 17:11:15 +01:00

46 lines
1016 B
C#

namespace MauMau_Server.Mau;
public class Deck
{
public List<Card> UnusedDeck = new();
public List<Card> UsedDeck = new();
public Deck()
{
foreach (CardType cardType in Enum.GetValues(typeof(CardType)))
{
foreach (CardValue cardValue in Enum.GetValues(typeof(CardValue)))
{
UnusedDeck.Add(new Card(cardType, cardValue));
}
}
UnusedDeck = UnusedDeck.OrderBy(x => Guid.NewGuid()).ToList();
}
public List<Card> GetUnusedDeck()
{
return UnusedDeck;
}
public Card DrawCard()
{
var card = UnusedDeck[0];
UnusedDeck.RemoveAt(0);
return card;
}
public List<Card> DrawCards(int amount)
{
var cards = new List<Card>();
for (var i = 0; i < amount; i++)
{
cards.Add(DrawCard());
}
return cards;
}
public void AddCardToUsedDeck(Card card)
{
UsedDeck.Add(card);
}
}