Esempio n. 1
0
        private void SubmitPurchaseToken()
        {
            TacoManager.OpenMessage(TacoConfig.Processing);
            Action <string> success = (string data) => {
                TacoManager.CloseMessage();
                GeneralResult r = JsonUtility.FromJson <GeneralResult>(data);
                string        notice;
                string        header;
                if (r.success)
                {
                    TacoManager.UpdateFundsWithToken(r.cash, r.token.ToString(), r.ticket.ToString());
                    moneyValue.text = TacoManager.FormatGTokens(double.Parse(TacoManager.User.gToken));
                    TournamentManager.Instance.SetMoneytext();
                    header = TacoConfig.SuccessHeader;
                    notice = r.msg;
                }
                else
                {
                    header = TacoConfig.ErrorHeader;
                    notice = r.err;
                }

                TacoManager.OpenModalGeneralResultPanel(r.success, header, notice);
            };
            Action <string, string> fail = (string data, string error) => {
                TacoManager.CloseMessage();
                TacoManager.OpenModalConnectionErrorPanel(error);
            };
            string currency = exchangedCurrencyIcon.sprite == TacoConfig.currencySprites[0] ? "0" : "2";

            StartCoroutine(ApiManager.Instance.BuyToken(currency, exchangedNumber, success, fail));
        }
Esempio n. 2
0
        public void PostScore(int score, Tournament target)
        {
            if (target != null && TacoManager.UserLoggedIn())
            {
                Action <string> success = (string data) => {
                    ScoreResult r         = JsonUtility.FromJson <ScoreResult>(data);
                    string      modalBody = TacoConfig.TacoPlayEndedModalBody;
                    string      modal     = TacoConfig.TacoPlayEndedWinnerModalBody;
                    modalBody = modalBody.Replace("&gameEndScore", r.score.ToString());
                    if (r.tournament.typeCurrency == 0)
                    {
                        modal = modal.Replace("&prize", " $ " + Math.Round((Decimal)r.tournament.prize, 2, MidpointRounding.AwayFromZero));
                        modal = modal.Replace("&point", "P " + (int)Math.Round(r.tournament.prize * 50, 0, MidpointRounding.AwayFromZero) + " and ");
                    }
                    else
                    {
                        modal = modal.Replace("&point", string.Empty);
                        modal = modal.Replace("&prize", " T " + r.tournament.prize);
                    }

                    if (r.winner)
                    {
                        TacoManager.CloseAllModals();
                        TacoManager.SetToMainMenu();
                        TacoManager.ShowPanel(PanelNames.MyLeaderboardPanelFromEndGame);
                    }
                    else
                    {
                        TacoManager.CloseAllModals();
                        TacoManager.SetToMainMenu();
                        TacoManager.ShowPanel(PanelNames.MyLeaderboardPanelFromEndGame);
                    }
                    TacoManager.GameToken = null;
                    if (r.updated)
                    {
                        TacoManager.UpdateFundsWithToken(r.funds, r.gTokens.ToString(), r.ticket.ToString());
                    }
                };

                Action <string, string> fail = (string data, string error) => {
                    if (Application.internetReachability == NetworkReachability.NotReachable)
                    {
                        TacoManager.CloseMessage();
                        TacoManager.OpenModalConnectionErrorPanel(TacoConfig.ErrorStatusNoInternet);
                    }
                    else
                    {
                        var r = JsonUtility.FromJson <StartGameResult>(data);
                        TacoManager.CloseAllModals();
                        TacoManager.OpenModalGeneralResultPanel(false, TacoConfig.TacoPlayError, r.message);
                    }
                    TacoManager.GameToken = null;
                };

                StartCoroutine(ApiManager.Instance.EndGame(score, target.id, target.gameId, TacoManager.GameToken, TacoManager.User.token, success, fail));
            }
        }
Esempio n. 3
0
        public void PostScore(int score, Tournament target)
        {
            TacoConfig.print(" Game Ended with score : " + score);

            PlayerPrefs.SetInt(TacoConfig.TacoHighScoresType, 0);
            PlayerPrefs.SetFloat(TacoConfig.TacoHighScoresPerhapsText, 0);
            Highscore.Instance.highscore = PlayerPrefs.GetFloat("highscoreArcade");
            Highscore.Instance.UpdateManually();

            if (target != null && TacoManager.UserLoggedIn())
            {
                //StartCoroutine(endGame(score));

                Action <string> success = (string data) => {
                    ScoreResult r = JsonUtility.FromJson <ScoreResult>(data);
                    TacoConfig.print("Result complete = " + r.success + " - " + r.score + " - " + r.message);
                    string modalBody = string.Empty;
                    //If user play again so token can't verify
                    if (r.success)
                    {
                        modalBody = TacoConfig.TacoPlayEndedModalBody;

                        modalBody = modalBody.Replace("&gameEndScore", r.score.ToString());
                    }
                    else
                    {
                        modalBody = TacoConfig.TacoPlayEndedAgainModalBody;
                    }

                    TacoManager.CloseAllModals();
                    TacoManager.OpenModal(TacoConfig.TacoPlayEndedModalHeader, modalBody, null, ModalFunctions.TournamentGamePosted);

                    // set the status text
                    TacoManager.StatusText.text = "";

                    // game is over : release token
                    TacoManager.GameToken = null;
                    if (r.updated)
                    {
                        TacoManager.UpdateFundsWithToken(r.funds, r.gTokens.ToString());
                    }
                };

                Action <string, string> fail = (string data, string error) => {
                    var msg = data + ((string.IsNullOrEmpty(error)) ? "" : " : " + error);
                    TacoConfig.print("Error starting game - " + msg);

                    var r = JsonUtility.FromJson <StartGameResult>(data);

                    TacoManager.CloseAllModals();
                    TacoManager.OpenModal(TacoConfig.TacoPlayError, r.message);
                };

                StartCoroutine(ApiManager.Instance.EndGame(score, target.id, target.gameId, TacoManager.GameToken, TacoManager.User.token, success, fail));
            }
        }
Esempio n. 4
0
        public void convertFundsToGTokens(int fee)
        {
            AddGTokensText.GetComponent <Text>().text             = TacoConfig.AddGTokensAdding;
            AddGTokensButton.GetComponent <Button>().interactable = false;

            Action <string> success = (string data) => {
                TacoConfig.print("Purchase GTokens complete - " + data);
                var r = JsonUtility.FromJson <AddGTokesResult>(data);
                if (r.success)
                {
                    TacoManager.UpdateFundsWithToken(r.funds, r.gTokens);
                    string returnMessage = TacoConfig.AddFundsSuccessMessage + TacoManager.FormatGTokens(double.Parse(r.gTokens));

                    AddGTokensText.GetComponent <Text>().text = "";

                    // show a dialog to indicate success : then return to tournaments
                    TacoManager.OpenModal(TacoConfig.AddGTokensTitleSuccessMessage, returnMessage, null, ModalFunctions.ReturnToTournaments, null, null, false);
                }
                else
                {
                    AddGTokensText.GetComponent <Text>().text = TacoConfig.Error + " : " + r.message;
                }
                AddGTokensButton.GetComponent <Button>().interactable = true;
            };

            Action <string, string> fail = (string data, string error) => {
                if (!string.IsNullOrEmpty(error))
                {
                    TacoConfig.print("Error : " + error);
                }
                TacoManager.CloseMessage();
                string msg = data + (string.IsNullOrEmpty(error) ? "" : " : " + error);
                TacoConfig.print("Error adding gTokens : " + msg);
                if (!string.IsNullOrEmpty(data))
                {
                    ErrorResult errorResult = JsonUtility.FromJson <ErrorResult>(data);
                    if (!errorResult.success)
                    {
                        msg = errorResult.message;
                    }
                }
                AddGTokensText.GetComponent <Text>().text             = TacoConfig.Error + " : " + msg;
                AddGTokensButton.GetComponent <Button>().interactable = true;
                //TacoManager.OpenModal(TacoConfig.TacoLoginErrorHeader, msg);
            };

            StartCoroutine(ApiManager.Instance.AddGTokens(fee, fee * TacoConfig.gTokenExchange, success, fail));
        }
        public void Join()
        {
            TacoManager.OpenMessage(TacoConfig.TacoPublicJoining);

            var t = TacoManager.Target;


            Action <string> success = (string data) => {
                // show the highscores
                TacoConfig.print("Join Tournament complete - " + data);
                //createResultsText.GetComponent<Text>().text = "Tournament created, click the 'Play' button below to play your round now!";

                var r = JsonUtility.FromJson <JoinTournamentResult>(data);


                if (r.success)
                {
                    TacoManager.SetTarget(t);

                    Decimal prize    = decimal.Parse(r.tournament.prize.ToString("F2"));
                    Decimal entryFee = decimal.Parse(r.tournament.entryFee.ToString("F2"));

                    string replacedString = "";
                    if (r.tournament.typeCurrency == 0)
                    {
                        replacedString = TacoConfig.TacoJoinPublicSuccessBody.Replace("&userFunds", r.userFunds);
                        replacedString = replacedString.Replace("&entryFee", entryFee.ToString());
                        replacedString = replacedString.Replace("&prize", prize.ToString());
                    }
                    else
                    {
                        replacedString = TacoConfig.TacoJoinPublicSuccessBody.Replace("&userFunds", " G " + r.userFunds);
                        replacedString = replacedString.Replace("&entryFee", " G " + entryFee.ToString());
                        replacedString = replacedString.Replace("&prize", " G " + prize.ToString());
                    }
                    TacoManager.CloseMessage();

                    TacoManager.OpenModal(TacoConfig.TacoJoinPublicSuccessHead, replacedString, null, ModalFunctions.JoinPublicSuccess);

                    double val = 0;
                    if (r.tournament.typeCurrency == 0)
                    {
                        //real money
                        if (double.TryParse(r.userFunds, out val))
                        {
                            TacoManager.UpdateFundsWithToken(val, r.currencyValue);
                        }
                    }
                    else
                    {
                        //userFunds is 'gtoken' now
                        if (double.TryParse(r.currencyValue, out val))
                        {
                            TacoManager.UpdateFundsWithToken(val, r.userFunds);
                        }
                    }
                }
                else
                {
                    TacoManager.CloseMessage();

                    TacoManager.OpenModal(TacoConfig.TacoJoinPublicErrorHead, TacoConfig.TacoJoinPublicErrorMessage00 + r.message);
                }
            };

            Action <string, string> fail = (string data, string error) => {
                var msg = data + (string.IsNullOrEmpty(error) ? "" : " : " + error);
                TacoConfig.print("Error adding funds : " + msg);

                if (!string.IsNullOrEmpty(data))
                {
                    var r = JsonUtility.FromJson <CreateTournamentResult>(data);
                    if (!string.IsNullOrEmpty(r.message))
                    {
                        TacoConfig.print("r.message: " + r.message);
                        TacoManager.CloseMessage();
                        TacoManager.OpenModal(TacoConfig.TacoJoinPublicErrorHead, r.message);
                    }
                }
            };


            if (t != null)
            {
                StartCoroutine(ApiManager.Instance.JoinTournament(t.typeCurrency, t.id, TacoConfig.SiteId, TacoManager.GameId, TacoManager.User.token, success, fail));
            }
        }
Esempio n. 6
0
        public void Join()
        {
            TacoManager.OpenMessage(TacoConfig.TacoPublicJoining);
            var t = TacoManager.Target;

            Action <string> success = (string data) => {
                var r = JsonUtility.FromJson <JoinTournamentResult> (data);
                if (r.success)
                {
                    TacoManager.SetTarget(t);

                    Decimal prize    = decimal.Parse(r.tournament.prize.ToString("F2"));
                    Decimal entryFee = decimal.Parse(r.tournament.entryFee.ToString("F2"));

                    string replacedString = string.Empty;
                    if (r.tournament.typeCurrency == 0)
                    {
                        replacedString = TacoConfig.TacoJoinPublicSuccessBody.Replace("&userFunds", r.userFunds);
                        replacedString = replacedString.Replace("&entryFee", entryFee.ToString());
                        replacedString = replacedString.Replace("&prize", prize.ToString());
                    }
                    else
                    {
                        replacedString = TacoConfig.TacoJoinPublicSuccessBody.Replace("&userFunds", " T " + r.userFunds);
                        replacedString = replacedString.Replace("&entryFee", " T " + entryFee.ToString());
                        replacedString = replacedString.Replace("&prize", " T " + prize.ToString());
                    }
                    TacoManager.CloseMessage();

                    TacoManager.OpenModalJoinSuccessPanel(r.tournament, TacoConfig.JoinSuccessNotice);
                    double val = 0;
                    if (r.tournament.typeCurrency == 0)
                    {
                        //real money
                        if (double.TryParse(r.userFunds, out val))
                        {
                            TacoManager.UpdateFundsWithToken(val, r.currencyValue, r.ticket, r.userBonus);
                        }
                    }
                    else
                    {
                        //userFunds is 'gtoken' now
                        if (double.TryParse(r.currencyValue, out val))
                        {
                            TacoManager.UpdateFundsWithToken(val, r.userFunds, r.ticket);
                        }
                    }

                    ShowTournamentPanel(CurrentSubPanel);
                }
                else
                {
                    TacoManager.CloseMessage();
                    if (r.addFund)
                    {
                        if (t.typeCurrency == 0)
                        {
                            TacoManager.OpenModalFundErrorJoinPanel(TacoConfig.TacoJoinPublicNoFundHead, t);
                        }
                        else
                        {
                            TacoManager.OpenModalTacoErrorJoinPanel(TacoConfig.TacoJoinPublicNoTacoHead, t);
                        }
                    }
                    else
                    {
                        TacoManager.OpenModalAlreadyJoinedPanel(TacoConfig.TacoJoinAlreadyHead, r.message);
                    }
                }
            };

            Action <string, string> fail = (string data, string error) => {
                var msg = data + (string.IsNullOrEmpty(error) ? string.Empty : " : " + error);
                Debug.Log("Error adding funds  : " + msg);

                if (!string.IsNullOrEmpty(data))
                {
                    var r = JsonUtility.FromJson <CreateTournamentResult> (data);
                    TacoManager.CloseMessage();
                    if (!string.IsNullOrEmpty(r.message))
                    {
                        if (r.forbidden)
                        {
                            TournamentSubmitForbidden(r.message);
                        }
                        else
                        {
                            TacoManager.OpenModalTournamentJoinErrorPanel(TacoConfig.TacoJoinPublicErrorHead, r.message, ModalFunctions.FundsScreen);
                        }
                    }
                }
            };

            if (t != null)
            {
                StartCoroutine(ApiManager.Instance.JoinTournament(t.typeCurrency, t.id, TacoSetup.Instance.SiteId, TacoManager.GameId, TacoManager.User.token, success, fail));
            }
        }
Esempio n. 7
0
        public void ReEnter()
        {
            TacoManager.OpenMessage(TacoConfig.TacoPublicJoining);
            var t = TacoManager.Target;

            Action <string> success = (string data) => {
                Debug.Log("reenter data: " + data);
                var r = JsonUtility.FromJson <JoinTournamentResult> (data);
                if (r.success)
                {
                    TacoManager.SetTarget(t);
                    var prize    = decimal.Parse(r.tournament.prize.ToString("F2"));
                    var entryFee = decimal.Parse(r.tournament.entryFee.ToString("F2"));

                    string replacedString = string.Empty;
                    if (r.tournament.typeCurrency == 0)
                    {
                        replacedString = TacoConfig.TacoJoinPublicSuccessBody.Replace("&userFunds", r.userFunds);
                        replacedString = replacedString.Replace("&entryFee", entryFee.ToString());
                        replacedString = replacedString.Replace("&prize", prize.ToString());
                    }
                    else
                    {
                        replacedString = TacoConfig.TacoJoinPublicSuccessBody.Replace("&userFunds", " T " + r.userFunds);
                        replacedString = replacedString.Replace("&entryFee", " T " + entryFee.ToString());
                        replacedString = replacedString.Replace("&prize", " T " + prize.ToString());
                    }
                    TacoManager.CloseMessage();
                    TacoManager.OpenModalJoinSuccessPanel(r.tournament, TacoConfig.ReenterSuccessNotice);
                    TacoManager.UpdateFundsWithToken(r.cash, r.token.ToString(), r.ticket.ToString());
                    ShowTournamentPanel(CurrentSubPanel);
                }
                else
                {
                    TacoManager.CloseMessage();
                    if (r.error == TacoConfig.NotEnoughFundError)
                    {
                        TacoManager.OpenModalFundErrorJoinPanel(TacoConfig.TacoJoinPublicNoFundHead, t);
                    }
                    else if (r.error == TacoConfig.NotEnoughTokenError)
                    {
                        TacoManager.OpenModalTacoErrorJoinPanel(TacoConfig.TacoJoinPublicNoTacoHead, t);
                    }
                    else if (r.error == TacoConfig.DuplidateError)
                    {
                        TacoManager.OpenModalAlreadyJoinedPanel(TacoConfig.TacoJoinAlreadyHead, r.message);
                    }
                    else
                    {
                        TacoManager.OpenModalGeneralResultPanel(false, TacoConfig.Error, r.message);
                    }
                }
            };

            Action <string, string> fail = (string data, string error) => {
                if (!string.IsNullOrEmpty(data))
                {
                    var r = JsonUtility.FromJson <CreateTournamentResult> (data);
                    TacoManager.CloseMessage();
                    if (!string.IsNullOrEmpty(r.message))
                    {
                        if (r.forbidden)
                        {
                            TournamentSubmitForbidden(r.message);
                        }
                        else
                        {
                            TacoManager.OpenModalTournamentJoinErrorPanel(TacoConfig.TacoJoinPublicErrorHead, r.message, ModalFunctions.FundsScreen);
                        }
                    }
                }
            };

            if (t != null)
            {
                StartCoroutine(ApiManager.Instance.ReEnterTournament(t.id, success, fail));
            }
        }