Exemple #1
0
    public BaseCard DrawFromDeck(BaseCard card)
    {
        if (Deck.Contains(card))
        {
            if (Hand.Count < MaxCardsInHand)
            {
                // Moving the card to the Hand
                Hand.Add(card);
                Deck.Remove(card);

                // Creating the visual controller for the card
                CardController cardController = CardController.Create(card);
                card.Controller = cardController;

                // Adding the Cardcontroller to the HandController
                HandController.Add(cardController);

                // Firing OnDrawn events
                card.OnDrawn();
                EventManager.Instance.OnCardDrawn(this, card);

                // Updating the Player glows
                UpdateSprites();

                return(card);
            }
            else
            {
                // TODO : Discard the card

                // Updating the Player glows
                UpdateSprites();
            }
        }

        return(null);
    }