public void SetCard(CardsSuit suit, CardNumbers number, Sprite front) { Suit = suit; Number = number; Front = front; Restart(); img.sprite = front; }
public Card GetCard(CardsSuit suit, CardNumbers number) { foreach (Card card in GetCards(suit)) { if (card.Suit == suit && card.Number == number) { return(card); } } return(new Card(CardsSuit.None, CardNumbers.None)); }
public void AddMatchSuit(CardsSuit suit) { CreateMatchSuitList(); if (GameSuits.Contains(suit)) { GameSuits.Remove(suit); } else if (GameSuits.Count < (int)GameMode) { GameSuits.Add(suit); } }
public Card[] GetCards(CardsSuit suit) { List <Card> cards = new List <Card>(); foreach (Card card in deck) { if (card.Suit == suit) { cards.Add(card); } } return(cards.ToArray()); }
public static Card[] GetCards(Card[] cards, CardsSuit suit) { List <Card> _cards = new List <Card>(); foreach (Card card in cards) { if (card.Suit == suit) { _cards.Add(card); } } return(_cards.ToArray()); }
public void ShuffleCards() { if (deck == null || deck.CardPrefab == null) { return; } if (cards_on_board == null) { CreateBoard(); } GameVariables GV = MemoramaManager.Instance.GameVariables; int totalPairs = GameVariables.RequiredCardsToFlip; List <Vector2_Int> occupiedPosition = new List <Vector2_Int>(); Vector2_Int position = Vector2_Int.zero; Card[] cards_to_play = deck.GetCards(GV.GameSuits.ToArray()); Card[] cards_to_check; short half_pairs = (short)(totalPairs / 2); for (int pairs = 0; pairs < totalPairs; ++pairs) { for (int suit = 0; suit < (int)GV.GameMode; ++suit) { cards_to_check = Deck.GetCards(cards_to_play, GV.GameSuits[suit]); for (int number = 0; number < (int)CardNumbers.counter; ++number) { if (pairs < half_pairs) { position = GetCardPosition(occupiedPosition, true); } else { position = GetCardPosition(occupiedPosition, false); } occupiedPosition.Add(position); CardsSuit c_suit = GV.GameSuits[suit]; cards_on_board[position.x, position.y].SetCard(c_suit, (CardNumbers)number, Deck.GetCard(cards_to_check, (CardNumbers)number).Front); } } } }
public Card(CardsSuit suit, CardNumbers number, Sprite front = null) { Suit = suit; Number = number; Front = front; }