private void UpdatePlayerCards(Turn target, List <CardVo> cardsToDelete) { Debug.Log("deal cards to target player + " + target); List <CardVo> currentPlayerDeck = target == Turn.PLAYER ? _playerDeck : _opponentDeck; for (int i = 0; i < currentPlayerDeck.Count; i++) { if (cardsToDelete.IndexOf(currentPlayerDeck[i]) != -1) { var cardToDeal = _spreadDeck[_spreadDeck.Count - 1]; _spreadDeck.RemoveAt(_spreadDeck.Count - 1); var cardToReplace = currentPlayerDeck[i]; currentPlayerDeck[i] = cardToDeal; Debug.Log("UpdatePlayerCards: card to deal id: " + cardToDeal.id + " target card to replace id: " + cardToReplace.id); DealCardToPlayer.Invoke(cardToDeal.id, cardToReplace.id, target); AddCardToSpread(); } } }
private void DealCardsToPlayer(Turn target) { Debug.Log("deal cards to target player + " + target); List <CardVo> currentPlayerDeck = target == Turn.PLAYER ? _playerDeck : _opponentDeck; for (int i = 0; i < GameConfig.PLAYER_DECK_SIZE; i++) { var cardToDeal = _spreadDeck[_spreadDeck.Count - 1]; _spreadDeck.RemoveAt(_spreadDeck.Count - 1); currentPlayerDeck.Add(cardToDeal); Debug.Log("DealCardToPlayer: card to deal id: " + cardToDeal.id + " target card id: " + -1); DealCardToPlayer.Invoke(cardToDeal.id, -1, target); AddCardToSpread(); } }