public void Mulligan(int playerID, List <Card> cards)
        {
            phase = ClientManager.clients[player1ID].name + "'s TURN";
            foreach (Card card in cards)
            {
                int index = -1;
                for (int x = 0; x < playerMapHand[playerID].Count; x++)
                {
                    if (card.id.Equals(playerMapHand[playerID][x].id))
                    {
                        index = x;
                        break;
                    }
                }
                if (index != -1)
                {
                    playerMapHand[playerID].RemoveAt(index);
                }
            }

            playerMapDeck[playerID].AddRange(cards);

            ShuffleDeck(playerMapDeck[playerID]);
            DrawCards(cards.Count, playerID);

            DataSender.SendMulligan(playerID, playerMapHand[playerID]);
            DataSender.SendUpdatedBoard(playerID, playerMapHand[playerID], playerMapBench[playerID], playerMapAttackZone[playerID],
                                        playerMapBench[playerToPlayer[playerID]], playerMapAttackZone[playerToPlayer[playerID]]);
            if (isMulliganDone)
            {
                DrawCards(1, player1ID);
                DrawCards(1, player2ID);
                attackPlayerId = player1ID;
                SendUpdatedBoardAndStats();
            }
            isMulliganDone = false ? true : true;
        }