private void TakeCardsFromPile(int numOfCards) { //List<byte> playerCardValues = gameDataManager.PlayerCards(remotePlayer); for (int i = 0; i < numOfCards; i++) { byte cardValue = gameDataManager.DrawCardValue(); if (cardValue == Constants.POOL_IS_EMPTY) { Debug.LogError("Pool is empty"); return; } //playerCardValues.Add(cardValue); //currentTurnPlayer.SetCardValues(playerCardValues); if (Card.GetRank(cardValue) == selectedRank) { cardAnimator.DrawDisplayingCard(currentTurnPlayer, cardValue); } else { cardAnimator.DrawDisplayingCard(currentTurnPlayer); } gameDataManager.AddCardValueToPlayer(currentTurnPlayer, cardValue); } //gameDataManager.DealCardValuesToPlayer(currentTurnPlayer, 1); //cardAnimator.DealDisplayingCards(currentTurnPlayer, 1); audioData.PlayOneShot(takeCardSounds[UnityEngine.Random.Range(0, takeCardSounds.Count - 1)]); //gameState = GameState.TurnStarted; //GameFlow(); }
public void OnTurnGoFish() { SetMessage($"Go fish!"); byte cardValue = gameDataManager.DrawCardValue(); if (cardValue == Constants.POOL_IS_EMPTY) { Debug.LogError("Pool is empty"); return; } if (Card.GetRank(cardValue) == selectedRank) { cardAnimator.DrawDisplayingCard(currentTurnPlayer, cardValue); } else { cardAnimator.DrawDisplayingCard(currentTurnPlayer); gameState = GameState.TurnStarted; } gameDataManager.AddCardValueToPlayer(currentTurnPlayer, cardValue); }
public void OnDrawFromDeckButton() { if (gameState == GameState.TurnDrawingCard) { byte cardValue = leastCountManager.DrawCardValue(); if (cardValue == Constants.POOL_IS_EMPTY) { Debug.LogError("Pool is empty"); return; } cardAnimator.DrawDisplayingCard(currentTurnPlayer, cardValue); leastCountManager.AddCardValueToPlayer(currentTurnPlayer.PlayerId, cardValue); move.drawnFromDeckOrDropped = "deck"; move.drawnCard = cardValue; gameState = GameState.TurnDrawingCardConfirmed; GameFlow(); } else { SetMessage("Drop the card and click on confirm card button first"); } }