protected void RPC_SendRStartSicbo(string strJson) { jStartSicbo = JsonUtility.FromJson <JStartSicbo> (strJson); }
IEnumerator _StartTimer(float timerValue) { SoundManager.instance.PlaySFX(SFXType.SFX_RoundStart, Vector3.zero); objStart.SetActive(true); objEnd.SetActive(false); yield return(_WFSUtility.wfs2); objStart.SetActive(false); bCanBet = true; //float timer = timerValue; while (timerValue > 0) { //timer = SicboTimer.instance.GetScaleZ(); txtTimer.text = timerValue.ToString(); yield return(new WaitForSeconds(1f)); timerValue = timerValue - 1f; } //if (PhotonNetwork.isMasterClient) //{ // SicboTimer.instance.SetScaleZ (0f); //} txtTimer.text = "0"; //yield return new WaitForSecondsRealtime (timerValue); bCanBet = false; unsortedPlayers[0].SubmitRecords(); objEnd.SetActive(true); objStart.SetActive(false); yield return(_WFSUtility.wfs2); objEnd.SetActive(false); yield return(_WFSUtility.wfs1); jStartSicbo = null; PrepareStartSicbo(); //if (apiPlayers != null) //unsortedPlayers[0].SetOtherPlayerBets (); if (PhotonNetwork.isMasterClient) { ApiManager.instance.StartSicbo(); } while (jStartSicbo == null) { //call bHasRStartSicbo on RPC_SendRStartSicbo NOT on RStartSicbo yield return(_WFSUtility.wef); } //dice animation// diceHistory.SetHistory(jStartSicbo.dice[0], jStartSicbo.dice[1], jStartSicbo.dice[2]); dice.MoveToCenter(jStartSicbo.dice[0], jStartSicbo.dice[1], jStartSicbo.dice[2]); // yield return(_WFSUtility.wfs3); for (int i = 0; i < jStartSicbo.players.Length; i++) //jStartSicbo.players does not contain duplicate player ID so length = number of players { for (int j = 0; j < jStartSicbo.players[i].bets.Length; j++) { bool bWin = false; if (long.Parse(jStartSicbo.players[i].bets[j].coin_won) > 0) { bWin = true; } unsortedPlayers[0].ShowWinLoseTiles(bWin, jStartSicbo.players[i].bets[j].sicbo_type); } } if (PhotonNetwork.isMasterClient) { UpdateMoneyProperties(jStartSicbo.players); } yield return(_WFSUtility.wfs2); //chips from lose to dealer animation// //yield return _WFSUtility.wfs2; ////chips from dealer to win animation// //yield return _WFSUtility.wfs2; UpdateMoneyUI(); unsortedPlayers[0].CleanUp(); //TransitionToNextRound (); if (PhotonNetwork.isMasterClient) { PrepareSicboRound(); } //HAVE NOT DEDUCT COIN FROM PLAYERS* //HAVE NOT SHOWN DEDUCTED COIN FROM OTHER PLAYERS* //disable bet* //send board state to all clients* //prepare start sicbo* //if master startSicbo* //give RStartSicbo to all clients* //wait until RStartSicbo != null* //dice animation //win lose fx* //take chip from losing //give chip to winning //update coin of each players* //start new round }