IEnumerator GiveOutCards()
    {
        for (int i = 0; i < enemyHandSlots.Count; i++)
        {
            if (enemyHandSlots[i].currCard == null && enemyCardDeck.Count > 0)
            {
                Card card = enemyCardDeck.Pop();
                uIController.refreshCards(true, enemyCardDeck.Count);
                enemyHandSlots[i].currCard = card;
                card.currPosition          = enemyHandSlots[i];
                AudioManager.Instance.PlaySound("Hmm");
                card.transform.DOMove(enemyHandSlots[i].transform.position, 0.3f).OnComplete(() =>
                {
                    card.startPos = card.transform.position;
                    card.ActivateCard();
                });
                card.transform.DOScale(1.0f, 0.3f);
                yield return(new WaitForSeconds(0.3f));
            }
        }

        for (int i = 0; i < playerHandSlots.Count; i++)
        {
            if (playerHandSlots[i].currCard == null && playerCardDeck.Count > 0)
            {
                Card card = playerCardDeck.Pop();
                uIController.refreshCards(false, playerCardDeck.Count);
                playerHandSlots[i].currCard = card;
                card.currPosition           = playerHandSlots[i];
                AudioManager.Instance.PlaySound("Hmm");
                card.transform.DOMove(playerHandSlots[i].transform.position, 0.3f).OnComplete(() =>
                {
                    card.startPos = card.transform.position;
                    card.ActivateCard();
                });
                card.transform.DOScale(1.0f, 0.3f);
                yield return(new WaitForSeconds(0.3f));
            }
        }

        gameController.ChangeTurn();
        uIController.ActivateFieldButtons(true);
    }