public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; LuckyDiceGameLoop luckyDiceGameLoop = GameManager.GetGameLoop(1); Dictionary <string, string> dic = new Dictionary <string, string>(); dic["TotalBetTai"] = luckyDiceGameLoop.TotalBetTai.ToString(); dic["TotalBetXiu"] = luckyDiceGameLoop.TotalBetXiu.ToString(); dic["TotalUserBetTai"] = luckyDiceGameLoop.TotalUserBetTai.ToString(); dic["TotalUserBetXiu"] = luckyDiceGameLoop.TotalUserBetXiu.ToString(); dic["SessionID"] = luckyDiceGameLoop.SessionID.ToString(); dic["CurrentState"] = luckyDiceGameLoop.CurrentState.ToString(); dic["Ellapsed"] = luckyDiceGameLoop.Ellapsed.ToString(); dic["AdminControl"] = luckyDiceGameLoop.AdminControlResult.ToString(); dic["TaiWin"] = luckyDiceGameLoop.IsTaiWin.ToString(); dic["ResultNormal"] = luckyDiceGameLoop.CheckStateMatch().ToString(); dic["Fund"] = luckyDiceGameLoop.GetFundBot().ToString(); dic["Dice"] = luckyDiceGameLoop.GetDice().ToString(); dic["ResultAdminControl"] = luckyDiceGameLoop.GetResultAdminControl().ToString(); context.Response.Write(JsonConvert.SerializeObject(dic)); }
public void Bet() { if (Monitor.TryEnter(_managerLock, 5000)) { try { LoadBetData(); LoadConfig(); if (!_configuration.Enable) { return; } // Kiểm tra config var accountId = 10000; _gameLoop = GameManager.GetGameLoop(1); var _factory = new TaskFactory(); // Thay đổi số lượng bot bet _botList.Shuffle(); var botChange = RandomUtil.NextInt(_configuration.MinBot, _configuration.MaxBot); var betList = _botList.ToList().GetRange(0, botChange); var idleTime = RandomUtil.NextInt(1, 48); var idleTime2 = RandomUtil.NextInt(1, 48); NLogManager.LogMessage($"Bot Bet | IdleTime :{idleTime} - {idleTime2}"); foreach (var bot in betList) { _factory.StartNew(async() => { try { var time = RandomUtil.NextInt(1, 50); bot.Check(); while (time >= idleTime && time <= idleTime + 2 && bot.BetSide == BetSide.Tai) { time = RandomUtil.NextInt(1, 50); } while (time >= idleTime2 && time <= idleTime2 + 2 && bot.BetSide == BetSide.Xiu) { time = RandomUtil.NextInt(1, 50); } await Task.Delay(time * 1000); var betResponse = _gameLoop.Bet("", accountId++, bot.DisplayName, "", bot.BetSide, bot.BetAmount, out var summaryBet, out var balance, out var error, true); } catch (Exception e) { NLogManager.PublishException(e); Console.WriteLine(e); } }); } } catch (Exception ex) { NLogManager.PublishException(ex); } finally { Monitor.Exit(_managerLock); } } }