public int GetSampleData() { string accountName = AccountSession.AccountName; accountName = "Player_15364517"; if (string.IsNullOrEmpty(accountName)) { return(-13); } return(AbstractDaoMinigame.Instance().CreateMiniPokerDao().GetTestData(accountName)); }
public bool AutoFinishSession(HiLoGetAccountInfoResponse resultAccInfo, long accountId, string accountName, string clientIp) { try { //Đã hết thời gian chơi if (resultAccInfo.currentStep > 1) { //Đã chơi có thể tự finish var result = AbstractDaoMinigame.Instance().CreateMiniHiloDao(). SetBet((int)accountId, accountName, resultAccInfo.currentRoomId, resultAccInfo.currentBetType, 2, 1, clientIp, 1, 1); if (result.responseStatus > 0) { //Đã finish thành công //Chuyển ván mới return(true); } return(false); } //Chơi random 1 bước sau đó finish var randomLocation = new Random().Next(0, 1); var resultStep1 = AbstractDaoMinigame.Instance().CreateMiniHiloDao(). SetBet((int)accountId, accountName, resultAccInfo.currentRoomId, resultAccInfo.currentBetType, 1, randomLocation, clientIp, 1, 1); if (resultStep1.responseStatus > 0) { //Finish Phiên var resultStep2 = AbstractDaoMinigame.Instance().CreateMiniHiloDao(). SetBet((int)accountId, accountName, resultAccInfo.currentRoomId, resultAccInfo.currentBetType, 2, 1, clientIp, 1, 1); if (resultStep2.responseStatus > 0) { //Đã finish thành công //Chuyển ván mới return(true); } } return(false); } catch (Exception ex) { NLogManager.PublishException(ex); return(false); } }
public void GetAccountInfoHiLo() { try { long accountId = AccountSession.AccountID; string accountName = AccountSession.AccountName; if ((accountId < 1 || string.IsNullOrEmpty(accountName))) { throw new NotAuthorizedException(NOT_LOGIN_MESSAGE); } if (CacheCounter.CheckAccountActionFrequency(accountId.ToString(), 15, "GetAccInfo") > 6) { NLogManager.LogMessage(string.Format("BlockGetAccInfo=>Acc:{0}|User:{1}", accountId, accountName)); return; } var resultAccInfo = AbstractDaoMinigame.Instance().CreateMiniHiloDao() .GetAccountInfo((int)accountId, accountName); NLogManager.LogMessage("resultAccInfo: " + JsonConvert.SerializeObject(resultAccInfo)); if (resultAccInfo.currentTurnId > 0) { if (resultAccInfo.remainTime <= 0) { NLogManager.LogMessage(string.Format("AutoFinishSession:Acc:{0}|User:{1}|Turn:{2}", accountId, accountName, resultAccInfo.currentTurnId)); if (HiLoHandler.Instance.AutoFinishSession(resultAccInfo, accountId, accountName, IPAddressHelper.GetClientIP())) { HiLoHandler.Instance.FinishAccSession(resultAccInfo.currentTurnId); return; } } Clients.Caller.resultHiLoAccountInfo(resultAccInfo); } } catch (Exception exception) { NLogManager.LogError("ERROR GetAccountInfoHiLo: " + exception); NLogManager.PublishException(exception); } }
public int SetBetHiLo(int betType, int stepType, int locationId, int roomId) { try { long accountId = AccountSession.AccountID; string accountName = AccountSession.AccountName; if (accountId < 1 || string.IsNullOrEmpty(accountName)) { NLogManager.LogMessage(string.Format("Chưa đăng nhập")); return(-1001); } if (betType < 1 || betType > 2 || locationId < 0 || locationId > 1 || roomId < 1 || roomId > 5) { Logout(); NLogManager.LogMessage(string.Format("BlockAcc=> {0} ({1}) Wrong Input.", accountName, accountId)); return(-212); } if (CacheCounter.CheckAccountActionFrequency(accountId.ToString(), 1, "SetBet") > 2) { NLogManager.LogMessage(string.Format("BlockAccFast => {0} ({1}) bet liên tục 1 giây 2 lần.", accountName, accountId)); return(-1001); } if (CacheCounter.AccountActionCounter(accountId.ToString(), "SetBetAm") > 5) { NLogManager.LogMessage(string.Format("BlockAccAm => {0} ({1}) bắn âm > 5 lần.", accountName, accountId)); return(-1003); } var result = AbstractDaoMinigame.Instance().CreateMiniHiloDao(). SetBet((int)accountId, accountName, roomId, betType, stepType, locationId, IPAddressHelper.GetClientIP(), 1, 1); if (stepType == 2 || result.prizeValue == 0 || result.responseStatus < 0) { //Kết thúc phiên hoặc thua cuộc HiLoHandler.Instance.FinishAccSession(result.turnId); } else { if (result.responseStatus < 0) { //Add vào list để duyệt check finish phiên var accInfo = new HiLoGetAccountInfoResponse() { currentTurnId = result.turnId, currentRoomId = roomId, currentBetType = betType, AccountId = accountId, AccountName = accountName, currentStep = result.step }; HiLoHandler.Instance.AddOrUpdateSession(accInfo); } } if (result.responseStatus < 0) { CacheCounter.CheckAccountActionFrequency(accountId.ToString(), 15, "SetBetAm"); } Clients.Caller.resultHiLoSetBet(result); return(result.responseStatus); } catch (Exception exception) { NLogManager.PublishException(exception); } return(-99); }