IEnumerator CombatCardPlayed(ICombatCard playedCardObject)
    {
        uiToggler.DisablePlayerActionsDuringCardPlay();
        CombatCard playedCard = playedCardObject.GetAssignedCard();
        CharacterGraphic userGraphic = playedCard.GetUserChar();

        //Visualize card play
        if (playedCard.targetType == CombatCard.TargetType.None)
            PutCardToCharacter(playedCardObject, userGraphic);
        if (playedCard.targetType == CombatCard.TargetType.AllEnemies || playedCard.targetType == CombatCard.TargetType.AllFriendlies)
            PutCardToCenter(playedCardObject);
        if (playedCard.targetType != CombatCard.TargetType.None && playedCard.targetType != CombatCard.TargetType.AllEnemies
            && playedCard.targetType != CombatCard.TargetType.AllFriendlies)
        {
            CharacterGraphic targetGraphic = null;
            targetGraphic = playedCard.targetChars[0];
            PutCardToCharacter(playedCardObject, targetGraphic);
        }
        //Actual effects
        playedCard.PlayCard();
        playedCard.userCharGraphic.RemovePlayedCombatCardFromHand(playedCard);
        yield return new WaitForSeconds(cardPlayAnimationTime);
        GameObject.Destroy(playedCardObject.GetTransform().gameObject);

        if (userGraphic.GetHealth() > 0)
            userGraphic.TurnFinished();

        characterManager.CleanupCharactersWhoDied();

        if (turnStatus == TurnStatus.Player)
            uiToggler.ReenablePlayerActions();

        TransferTurn();
        yield break;
    }
 void PutCardToCharacter(ICombatCard playedCardObject, CharacterGraphic character)
 {
     if (character == null)
         throw new System.Exception("Null character!");
     playedCardObject.GetTransform().SetParent(character.appliedCardsGroup, false);
     playedCardObject.GetTransform().SetAsLastSibling();
 }
 public void PutCardToCenter(ICombatCard playedCardObject)
 {
     playedCardObject.GetTransform().SetParent(centerPlayArea, false);
 }