Пример #1
0
        public ActionResult GetPlayerState(int playerId)
        {
            var transaction = _transaction.GetLastTransactionHistoryByPlayer(playerId).Transaction;
            var balance     = _account.GetBalance(playerId);

            var success = balance > 0;

            var response = new SpinResponse()
            {
                ErrorMessage = string.Empty,
                Balance      = balance,
                Transaction  = transaction,
                Success      = success
            };

            return(Ok(response));
        }
Пример #2
0
        public ActionResult Spin([FromBody] SpinRequest spinRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var requestToken = Request.Headers["Authorization"].ToString().Replace(" ", string.Empty);
            var currentToken = $"Bearer{_account.GetToken(spinRequest.PlayerId)}";

            if (requestToken != currentToken)
            {
                return(Unauthorized());
            }

            var playerId  = spinRequest.PlayerId;
            var betAmount = spinRequest.Bet;


            var slots = _game.Spin(playerId, betAmount);

            var errorMessage = new BaseResponse();

            decimal balance = -1;

            var transaction = _transaction.GetLastTransactionHistoryByPlayer(spinRequest.PlayerId).Transaction;

            balance = _account.GetBalance(spinRequest.PlayerId);

            var response = new SpinResponse()
            {
                ErrorMessage = errorMessage.ErrorMessage,
                Balance      = balance,
                Transaction  = transaction,
                Success      = !string.IsNullOrEmpty(transaction),
                SpinResult   = slots
            };

            return(Ok(response));
        }
Пример #3
0
 void Spin()
 {
     spinButton.enabled = false;
     spinData = null;
     spinning = true;
     var bet = m_betAmounts[m_betIdx];
     var spin = new Spin(m_lines[m_lineIdx], bet);
     ContentManager.Instance.Player.IncrementCredits(-bet * m_lineCounts[m_lineIdx]);
     UpdateLabels();
     ResetReelChecks ();
     if(this.USE_BAKED_LOGIC) {
         DemoSpinner.Spin(spin, (text) => {
             Debug.Log ("Spin done!");
             Debug.Log ("Got spin: " + text);
             LitJson.JsonData jdata = LitJson.JsonMapper.ToObject<LitJson.JsonData>(text);
             spinData = new SpinResponse(jdata);
         });
     }
     else {
         ConnectionProxy.Connection.SendMessage(spin, (jdata) => {
             Debug.Log ("Spin done!");
             Debug.Log (jdata["results"]);
             spinData = new SpinResponse(jdata);
         });
     }
 }