private void OnPlayedCard( CardState cardState, int roomIndex, SpawnPoint dropLocation, CombatManager.ApplyPreEffectsVfxAction onPreEffectsFiredVfx, CombatManager.ApplyEffectsAction onEffectsFired) { if (cardManager.GetCardStatistics().GetNumCardsPlayedThisTurnOfType(CardType.Spell) + cardManager.GetCardStatistics().GetNumCardsPlayedThisTurnOfType(CardType.Monster) < numOfCards) { var trait = new CardTraitDataBuilder { TraitStateName = "CardTraitRetain" }; if (!cardState.HasTemporaryTrait(typeof(CardTraitRetain))) { cardState.AddTemporaryTrait(trait.Build(), cardManager); cardState.UpdateCardBodyText(); } } }