private IEnumerator ExecuteBust() { IsGameOver = true; yield return(new WaitForSeconds(0.5f)); OnBust(); ChipContainer.TakeChips(); }
private IEnumerator ExecutePush() { IsGameOver = true; yield return(new WaitForSeconds(0.5f)); OnPush(); Money += betValue; ChipContainer.ReturnChips(); }
private void Update() { ChipContainer.Update(); if (IsGameOver || isPlayersTurn) { return; } dealerHitTimer -= Time.deltaTime; if (dealerHitTimer <= 0) { waitBeforeNextDealerHit = false; } if (waitBeforeNextDealerHit) { return; } if (dealerCardStack.Value.NumberValue < 17) { DealerHit(1, false); WaitBeforeNextDealerHit(); } else if (dealerCardStack.Value.NumberValue == 17 && mustHitOnSoftAce && dealerCardStack.ContainsAny(CardValue.Ace)) { DealerHit(1, false); WaitBeforeNextDealerHit(); } else { if (dealerCardStack.HasBust && playerCardStack.HasBust || dealerCardStack.Value.NumberValue > playerCardStack.Value.NumberValue && !dealerCardStack.HasBust || dealerCardStack.HasNaturalBlackJack && playerCardStack.HasThreeOrMoreBlackJack) { StartCoroutine(ExecuteBust()); } else if (dealerCardStack.Value.NumberValue == playerCardStack.Value.NumberValue) { StartCoroutine(ExecutePush()); } else if (playerCardStack.Value.NumberValue > dealerCardStack.Value.NumberValue && !playerCardStack.HasBust || playerCardStack.Value.NumberValue < dealerCardStack.Value.NumberValue && dealerCardStack.HasBust || PlayerCardStack.HasNaturalBlackJack && dealerCardStack.HasThreeOrMoreBlackJack) { StartCoroutine(ExecuteWon()); } } }
public void StartGame() { ChipContainer.Initialize(); IsGameOver = false; isPlayersTurn = true; isFirstHit = true; IsBetFinalized = false; IsPaused = false; BetValue = 0; BetChipsCount = 0; OnStarted(); }
private IEnumerator ExecuteWon() { IsGameOver = true; yield return(new WaitForSeconds(0.5f)); OnWon(); if (playerCardStack.HasNaturalBlackJack) { Money += Mathf.RoundToInt(1.5f * betValue) + betValue; } else { Money += betValue * 2; } ChipContainer.ReturnChips(); }
public Instruction(Bot bot, ChipContainer lowDestination, ChipContainer highDestination) { Bot = bot; LowDestination = lowDestination; HighDestination = highDestination; }