private void RemoveCard() { //update the final card that is in the pile if (_cardId == 0) { _cardPileHandler.EnableCard(_cardId, true); } //show the next outcome card or move onto the next stage if all the outcome cards are shown if (_cardId > 0) { //show next outcome card State.Set(State.GameState.ShowGuessPopup); } else { //move onto the next stage, allowing the next set of playing cards to be shown if (CardsPlayed.TotalCardsPlayedCount < 12) { //reset the game back to the initial state and increment the card type State.Set(State.GameState.SpawnPlayingCard); CardType.Increment(); IsFirstRound = true; } else { //if all the playing cards, genetic and environment have been played then show the results State.Set(State.GameState.ShowResults); } } Destroy(transform.parent.gameObject); }