Exemplo n.º 1
0
        /// <summary>
        /// Deals a Card by returning it and removing it from the available Cards in the Deck.
        /// </summary>
        /// <returns>A Card from the beginning of the AvailableCards List.</returns>
        public Card DealCard()
        {
            // Deal a card from the top of the deck.
            Card c = AvailableCards[0];

            AvailableCards.RemoveAt(0);

            return(c);
        }
Exemplo n.º 2
0
    public Card DealCard()
    {
        Card dealtCard = null;

        if (AvailableCards.Count > 0)
        {
            int topIndex = AvailableCards.Count - 1;
            dealtCard = AvailableCards[topIndex];
            AvailableCards.RemoveAt(topIndex);
        }
        return(dealtCard);
    }
Exemplo n.º 3
0
    private static GameObject InstansiateCard(GameObject cardPrefab)
    {
        var card = UnityEngine.Object.Instantiate(cardPrefab);

        var cardInstance = card.GetComponent <CardInstance>();

        var cardIndex = UnityEngine.Random.Range(0, AvailableCards.Count);

        cardInstance.Card = AvailableCards[cardIndex];
        AvailableCards.RemoveAt(cardIndex);

        cardInstance.GetComponent <Image>().sprite = Resources.Load <Sprite>(Path.Combine(Constants.CardSprites, cardInstance.Card.SpriteName));

        card.transform.SetParent(GameController.Instance.Hand.transform);
        card.transform.localScale = cardPrefab.transform.localScale;

        return(card);
    }