public void leavePlayerOnTable(string playerName) { PlayerBean player = playersManager.getPlayerFromName(playerName); if (player != null) { playersManager.removePlayer(player); } }
public int getPlayerTotalBetAmount(String name) { PlayerBean player = playersManager.getPlayerFromName(name); int totalBetAmount = 0; totalBetAmount += startRound.getTotalPlayerBetAmount(player); totalBetAmount += firstFlopRound.getTotalPlayerBetAmount(player); totalBetAmount += secondFlopRound.getTotalPlayerBetAmount(player); totalBetAmount += thirdRound.getTotalPlayerBetAmount(player); return(totalBetAmount); }
public int getPlayerTotalBetAmount(String name) { PlayerBean player = playersManager.getPlayerFromName(name); int totalBetAmount = 0; totalBetAmount += preflopRound.getTotalPlayerBetAmount(player); totalBetAmount += flopRound.getTotalPlayerBetAmount(player); totalBetAmount += turnRound.getTotalPlayerBetAmount(player); totalBetAmount += riverRound.getTotalPlayerBetAmount(player); return(totalBetAmount); }
public void manageGameFinishAction(string winnerPlayerName, int rank, int winnerPlayerWinningAmount, int winnerPlayerTotalBalance, List <string> listBestCard) { if (GAME_STATUS == GameConstant.FINISHED) { iTween.Stab(gameObject, iTween.Hash("audioclip", winnerAudio, "pitch", 1)); bool isAllAreFolded = playersManager.isAllPlayersAreFolded(); defaultCardsManager.openFlopCards(); defaultCardsManager.openTurnCards(); defaultCardsManager.openRiverCards(); resetDefaultCards(false); resetWinningPlayers(false); isRunningGame = false; setEnableDisableOptions(false); txtLog.text = txtLog.text.ToString() + "\nWinner is " + winnerPlayerName + "\nRank : " + getRankName((HAND_RANK)rank) + "\nWinning Amount : " + winnerPlayerWinningAmount + "\n"; PlayerBean winnerPlayer = playersManager.findWinnerPlayerFromName(winnerPlayerName); StartCoroutine(manageWinnerPlayers(winnerPlayer)); winnerPlayer.setPlayerBalance(winnerPlayerTotalBalance); //DEBUG.Log ("Game Finish : Winner is " + winnerPlayerName + " >> Rank : " + (HAND_RANK)rank); if (!isAllAreFolded) { winnerPlayer.getRankPannel().SetActive(true); winnerPlayer.getRankText().text = getRankName((HAND_RANK)rank) + " (" + Utility.GetCurrencyPrefix() + "" + winnerPlayerWinningAmount + ")"; winnerPlayer.getRankText().color = Color.white; playersManager.openAllPlayerCards(); //reset cards foreach (string cardName in listBestCard) { GameObject cardGameObject = winnerPlayer.getCardObjectFromCardName(cardName); if (cardGameObject != null) { animationManager.WinningCardAnimation(cardGameObject); } else { cardGameObject = defaultCardsManager.getCardObjectFromCardName(cardName); if (cardGameObject != null) { animationManager.WinningCardAnimation(cardGameObject); } } } } // StartCoroutine(hideWinnerRankPannel(winnerPlayer)); Invoke("scrollDown", 1f); } }
public IEnumerator manageWinnerPlayers(PlayerBean winnerPlayer) { gameObjectManager.getTableChipSetPositionObject().SetActive(true); gameObjectManager.getTableChipSetObject().transform.position = gameObjectManager.getTableChipSetPositionObject().transform.position; animationManager.MoveChipsObject(gameObjectManager.getTableChipSetObject(), winnerPlayer.getChipObject()); yield return(new WaitForSeconds(GameConstant.ANIM_WAITING_TIME)); winnerPlayer.getChipObject().transform.position = winnerPlayer.getChipPositionObject().transform.position; gameObjectManager.getTableChipSetObject().transform.position = gameObjectManager.getTableChipSetPositionObject().transform.position; gameObjectManager.getTableChipSetPositionObject().SetActive(false); gameObjectManager.getTableChipSetObject().SetActive(false); StartCoroutine(blinkWinnerPlayer(winnerPlayer.getGameObject())); }
public int getPlayerLastAction(PlayerBean player) { int action = 0; foreach (TurnManager turnManager in listTurn) { if (turnManager.getPlayer().getPlayerName().Equals(player.getPlayerName())) { action = turnManager.getPlayerAction(); } } return(action); }
public int getTotalPlayerBetAmount(PlayerBean player) { int totalBet = 0; foreach (TurnManager turnManager in listTurn) { if (turnManager.getPlayer().getPlayerName().Equals(player.getPlayerName())) { totalBet += turnManager.getBetAmount(); // This will add every turn bet amount // totalBet = turnManager.getBetAmount (); // total round bet } } return(totalBet); }
public PlayerBean findWinnerPlayerFromName(string name) { PlayerBean winnerPlayer = null; foreach (PlayerBean player in listPlayers) { if (player.getPlayerName().Equals(name)) { winnerPlayer = player; winnerPlayer.setWinnerUser(); } player.setPlayerLastAction(GameConstant.ACTION_DEALER, player.getBalance()); player.stopAnimation(); } return(winnerPlayer); }
public PlayerBean setCurrentTurnPlayer(string name) { PlayerBean currentPlayer = null; foreach (PlayerBean player in listPlayers) { if (player.getPlayerName().Equals(name)) { player.setMyTurn(true); currentPlayer = player; } else { player.setMyTurn(false); } } return(currentPlayer); }
public void addNewPlayerOnTable(int id, string playerName, int balance, string card1, string card2, int gameStatus, int playerStatus, int currentRound) { // playerName = "Player "+playersManager.totalPlayerOnTable (); PlayerBean playerTmp = playersManager.getPlayerFromName(playerName); if (playerTmp == null) { GAME_STATUS = gameStatus; PlayerBean player = new PlayerBean( gameObjectManager.getPlayerGameObject(playersManager.totalPlayerOnTable()), gameObjectManager.getPlayerChipsObject(playersManager.totalPlayerOnTable()), id, playerName, balance, card1, card2, null); player.setBetAmount(0, 0); if (playerStatus == GameConstant.ACTION_FOLDED) { player.setFoldedPlayer(true); } else if (playerStatus == GameConstant.ACTION_WAITING_FOR_GAME) { player.setIsWatingForGamePlayer(); playersManager.closeActivePlayersCards(); } if (currentRound > GameConstant.TEXASS_ROUND_PREFLOP) { openRoundCards(currentRound); } gameObjectManager.getPlayerChipsObject(playersManager.totalPlayerOnTable()).SetActive(false); playersManager.addPlayer(player); // handleAnim.GetInstanceCardAnimation ().MoveObject (movingCoinObject, player.getBetChipsObject().gameObject); } else { // playerTmp.setCardsAndBalance (balance, card1, card2, null); } if (playersManager.getAllPlayers().Count < GameConstant.MIN_PLAYER_TO_START_GAME) { waitingForMinPlayer(); } }
public void highLightTurnPlayer(string player) { if (isRunningGame) { PlayerBean currentPlayer = playersManager.setCurrentTurnPlayer(player); if (appwarp.username.Equals(player)) { playerBalance = currentPlayer.getBalance(); RoundManager currentRoundManager = getCurrentRoundInfo(); if (currentPlayer.isWaitingForGame()) { sendPlayerActionToServer(0, GameConstant.ACTION_WAITING_FOR_GAME); } else if (currentRound != GameConstant.TEXASS_ROUND_PREFLOP && currentRoundManager.getAllTurnRecords().Count == 0 && !currentPlayer.getPlayerName().Equals(playersManager.getSmallBlindPlayer().getPlayerName())) { sendPlayerActionToServer(0, GameConstant.ACTION_NO_TURN); } else if (currentPlayer.isFoldedPlayer()) { sendPlayerActionToServer(0, GameConstant.ACTION_FOLDED); } else if (currentPlayer.isAllInPlayer()) { sendPlayerActionToServer(0, GameConstant.ACTION_ALL_IN); } else { setEnableDisableOptions(true); } } else { playerBalance = 0; setEnableDisableOptions(false); //gameManagerGameObject.transform.Find(GameConstant.UI_PATH_BUTTONS).gameObject.SetActive(false); } } //raiseValue = 0; //gameManagerGameObject.transform.Find (GameConstant.UI_PATH_BET_CHIP_DETAILS).GetComponent<Text> ().text = GameConstant.CURRENCY + raiseValue; }
IEnumerator DistributeHandCardsToAllPlayers() { PlayerBean dealerPlayer = playersManager.getDealerPlayer(); GameObject src = dealerPlayer.getCardDeskObject(); GameObject cardDeskPosition = dealerPlayer.getCardDeskPositionObject(); cardDeskPosition.SetActive(true); src.SetActive(true); int i = 0; while (i < playersManager.getAllPlayers().Count) { PlayerBean player = playersManager.getAllPlayers() [i]; // DEBUG.Log ("Name : "+ player.getPlayerName()+" >> "+player.isWaitingForGame()+" >> "+ player.isFoldedPlayer()); if (!player.isWaitingForGame()) { // DEBUG.Log ("Name : "+ player.getPlayerName()+" >< "); GameObject card1Obj = player.getCard1Object(); GameObject card2Obj = player.getCard2Object(); src.transform.position = cardDeskPosition.transform.position; animationManager.MoveCardsObject(src, card1Obj); yield return(new WaitForSeconds(GameConstant.ANIM_CARD_TIME)); card1Obj.SetActive(true); src.transform.position = cardDeskPosition.transform.position; animationManager.MoveCardsObject(src, card2Obj); yield return(new WaitForSeconds(GameConstant.ANIM_CARD_TIME)); card2Obj.SetActive(true); } else { DEBUG.Log("Name : " + player.getPlayerName()); } i++; } dealerPlayer.getCardDeskObject().SetActive(false); cardDeskPosition.SetActive(false); src.transform.position = cardDeskPosition.transform.position; }
private void sendPlayerActionToServer(int betAmount, int action) { iTween.Stab(gameObject, iTween.Hash("audioclip", buttonAudio, "pitch", 1)); raiseValue = 0; lastPlayerBetAmt = 0; SliderChips.value = 0f; SliderChips.enabled = false; gameObjectManager.getBetAmountText().text = GameConstant.CURRENCY + raiseValue; PlayerBean loginPlayer = playersManager.getPlayerFromName(appwarp.username); JSON_Object requestJson = new JSON_Object(); try { requestJson.put(GameConstant.TAG_PLAYER_NAME, appwarp.username); requestJson.put(GameConstant.TAG_BET_AMOUNT, betAmount); requestJson.putOpt(GameConstant.TAG_ACTION, action); WarpClient.GetInstance().sendMove(GameConstant.REQUEST_FOR_ACTION + requestJson.ToString()); } catch (Exception e) { Debug.Log("GameManager : " + e.ToString()); } setEnableDisableOptions(false); }
public void managePlayerMoveAction(string name, int betamount, int totalTableAmount, int totalPlayerBalance, int action) { PlayerBean playerBean = playersManager.getPlayerFromName(name); RoundManager currentRoundManger = getCurrentRoundInfo(); if (currentRound == GameConstant.WA_ROUND_START && playerBean.isBigBlindPlayer()) { totalBBPlayersTurn++; } if (currentRoundManger.getRound() == GameConstant.WA_ROUND_WHOOPASS) { StartCoroutine(managePlayerWACardAction(action, playerBean)); } txtLog.text = txtLog.text.ToString() + "\n" + playerBean.getPlayerName() + " >> Action >> " + getActionName(action) + " >> " + betamount; Invoke("scrollDown", 1f); if (betamount > 0) { animationManager.MoveChipsObject(playerBean.getChipObject(), gameObjectManager.getTableChipSetObject()); // yield return new WaitForSeconds (GameConstant.ANIM_WAITING_TIME); playerBean.getChipObject().transform.position = playerBean.getChipPositionObject().transform.position; } TurnManager turnManager = new TurnManager(playerBean, action, betamount); currentRoundManger.addTurnRecord(turnManager); int totalBetAmtInRound = currentRoundManger.getTotalPlayerBetAmount(playerBean); playerBean.setBetAmount(betamount, totalBetAmtInRound); playersManager.setLastPlayerAction(name, action, betamount, totalBetAmtInRound, totalPlayerBalance); if (playerBean.getBalance() <= 0 && !playerBean.isAllInPlayer()) { playerBean.setPlayerBalance(0); // if player balance is not enough playerBean.setAllInStatus(true); } setTotalBetTableAmount(totalTableAmount); }
public void addNewPlayerOnTable(int id, string playerName, int balance, string card1, string card2, string waCard, int gameStatus, int playerStatus) { PlayerBean playerTmp = playersManager.getPlayerFromName(playerName); if (playerTmp == null) { PlayerBean player = new PlayerBean( gameObjectManager.getPlayerGameObject(playersManager.totalPlayerOnTable()), gameObjectManager.getPlayerChipsObject(playersManager.totalPlayerOnTable()), id, playerName, balance, card1, card2, waCard); player.setBetAmount(0, 0); if (playerStatus == GameConstant.ACTION_FOLDED) { player.setFoldedPlayer(true); } else if (playerStatus == GameConstant.ACTION_WAITING_FOR_GAME) { player.setIsWatingForGamePlayer(); playersManager.closeActivePlayersCards(); } playersManager.addPlayer(player); } else { playerTmp.setCardsAndBalance(balance, card1, card2, waCard); } if (playersManager.getAllPlayers().Count < GameConstant.MIN_PLAYER_TO_START_GAME) { waitingForMinPlayer(); } }
public IEnumerator managePlayerWACardAction(int action, PlayerBean playerBean) { PlayerBean dealerPlayer = playersManager.getDealerPlayer(); GameObject src = dealerPlayer.getCardDeskObject(); GameObject cardDeskPosition = dealerPlayer.getCardDeskPositionObject(); cardDeskPosition.SetActive(true); src.SetActive(true); src.transform.position = cardDeskPosition.transform.position; if (action == GameConstant.ACTION_WA_UP) { animationManager.MoveCardsObject(src, playerBean.getWACardUPObject()); yield return(new WaitForSeconds(GameConstant.ANIM_WAITING_TIME)); playerBean.upWACardBuy(); } else if (action == GameConstant.ACTION_WA_DOWN) { animationManager.MoveCardsObject(src, playerBean.getWACardDownObject()); yield return(new WaitForSeconds(GameConstant.ANIM_WAITING_TIME)); playerBean.downWACardBuy(); } }
public void setPlayer(PlayerBean player) { this.player = player; }
public void setPlayerBetAmount(PlayerBean player, int betamount, int totalBetAmountInRound, int totalPlayerBalance) { player.setBetAmount(betamount, totalBetAmountInRound); player.setPlayerBalance(totalPlayerBalance); }
public void setDealerPlayer(PlayerBean dealerPlayer) { this.dealerPlayer = dealerPlayer; }
public void removePlayer(PlayerBean playerBean) { playerBean.goneFromTable(); listPlayers.Remove(playerBean); }
public void highLightTurnPlayer(string player) { if (isRunningGame) { PlayerBean currentPlayer = playersManager.setCurrentTurnPlayer(player); if (appwarp.username.Equals(player)) { playerBalance = currentPlayer.getBalance(); RoundManager currentRoundManager = getCurrentRoundInfo(); if (currentPlayer.isWaitingForGame()) { sendPlayerActionToServer(0, GameConstant.ACTION_WAITING_FOR_GAME); } else if (currentRound != GameConstant.WA_ROUND_START && currentRoundManager.getAllTurnRecords().Count == 0 && !currentPlayer.getPlayerName().Equals(playersManager.getSmallBlindPlayer().getPlayerName())) { sendPlayerActionToServer(0, GameConstant.ACTION_NO_TURN); } else if (currentRound == GameConstant.WA_ROUND_WHOOPASS) { if (currentPlayer.isFoldedPlayer()) { sendPlayerActionToServer(0, GameConstant.ACTION_WA_NO); waPurchaseOption.SetActive(false); } else { // Check second flop round bet amount waCardAmt = secondFlopRound.getWACardAmount(); // Check first flop round bet amount if WA amount 0 waCardAmt = waCardAmt == 0 ? firstFlopRound.getWACardAmount() : waCardAmt; // Second flop round bet amount is 0 then WA card is depend on Big blind amount waCardAmt = waCardAmt == 0 ? smallBlindAmount * 2 : waCardAmt; // If player have not enough balance then WA card is based on player balance PlayerBean loginPlayer = playersManager.getPlayerFromName(appwarp.username); if (loginPlayer.getBalance() < waCardAmt) { waCardAmt = loginPlayer.getBalance(); } if (currentPlayer.isAllInPlayer()) { txtWATitle.text = "Buy WhoopAss Card for FREE."; } else { txtWATitle.text = "Buy WhoopAss Card for " + Utility.GetCurrencyPrefix() + waCardAmt; } waPurchaseOption.SetActive(true); } } else { if (currentPlayer.isFoldedPlayer()) { sendPlayerActionToServer(0, GameConstant.ACTION_FOLDED); } else if (currentPlayer.isAllInPlayer()) { sendPlayerActionToServer(0, GameConstant.ACTION_ALL_IN); } else { setEnableDisableOptions(true); } } } else { if (currentRound == GameConstant.WA_ROUND_WHOOPASS) { waPurchaseOption.SetActive(false); } else { playerBalance = 0; setEnableDisableOptions(false); } } } }
public TurnManager(PlayerBean player, int playerAction, int betAmount) { this.player = player; this.playerAction = playerAction; this.betAmount = betAmount; }
public void setSmallBlindDefaultBet() { PlayerBean smallBlind = playersManager.getSmallBlindPlayer(); managePlayerMoveAction(smallBlind.getPlayerName(), smallBlindAmount, smallBlindAmount, (smallBlind.getBalance() - smallBlindAmount), GameConstant.ACTION_BET); }
public IEnumerator hideWinnerRankPannel(PlayerBean winnerPlayer) { yield return(new WaitForSeconds(2f)); winnerPlayer.getRankPannel().SetActive(false); }