Dominion.PlayerState.TrashCardFromDiscardOfType C# (CSharp) Method

TrashCardFromDiscardOfType() private method

private TrashCardFromDiscardOfType ( GameState gameState, Dominion.Card cardType, bool guaranteeInDiscard ) : Dominion.Card
gameState GameState
cardType Dominion.Card
guaranteeInDiscard bool
return Dominion.Card
        internal Card TrashCardFromDiscardOfType(GameState gameState, Card cardType, bool guaranteeInDiscard)
        {
            Card currentCard = this.RemoveCardFromDiscard(cardType);
            if (currentCard == null)
            {
                if (!guaranteeInDiscard)
                {
                    return null;
                }
                else
                {
                    throw new Exception("Player tried to trash a card that wasn't available in the discard.");
                }
            }

            MoveCardToTrash(currentCard, gameState);

            return currentCard;
        }
PlayerState