private Card DrawOneCardDeckOrderDestroyed(Card cardToFind, GameState gameState) { if (this.deck.IsEmpty && !this.discard.IsEmpty) { TriggerShuffleOfDiscardIntoDeck(gameState); } Card card = this.deck.FindAndRemoveCardOrderDestroyed(cardToFind); return card; }