示例#1
0
        protected override void InitSource()
        {
            lock (matchMutex)
            {
                try
                {
                    money = BOT.getMoneyManager();

                    var lines = FileHelper.readLines(PluginPath + userinfoFile);
                    foreach (var line in lines)
                    {
                        RHUser user = new RHUser();
                        user.parse(line);
                        users[user.id] = user;
                    }
                    lines = FileHelper.readLines(PluginPath + horseinfoFile);
                    foreach (var line in lines)
                    {
                        RHHorse horse = new RHHorse(line);
                        horses[horse.name] = horse;
                    }
                }
                catch (Exception e)
                {
                    FileHelper.Log(e.Message + "\r\n" + e.StackTrace);
                }
            }
        }
示例#2
0
 protected override void InitSource()
 {
     btc = BOT.getMoneyManager();
 }
示例#3
0
        public override bool HandleMessage(Message msg)
        {
            try
            {
                string cmd = BOT.getAskCmd(msg);
                if (string.IsNullOrWhiteSpace(cmd))
                {
                    return(false);
                }
                bool isGroup = msg.fromGroup > 0 ? true : false;
                //string uid = msg.from.ToString();
                long group = msg.fromGroup;
                if (!users.ContainsKey(msg.from))
                {
                    users[msg.from] = new RHUser(msg.from);
                }
                RHUser user = users[msg.from];

                //BOT.log("赛马 "+cmd);
                if (cmd == "赛马介绍" || cmd == "赛马玩法" || cmd == "赛马说明")
                {
                    msg.str = getIntroduction();
                    BOT.sendBack(msg);
                    return(true);
                }
                if (cmd == "富豪榜" || cmd == "富人榜")
                {
                    string res = BOT.getMoneyManager().showRichest();
                    if (!string.IsNullOrWhiteSpace(res))
                    {
                        msg.str = res;
                        BOT.sendBack(msg);
                        return(true);
                    }
                }

                if (cmd == "穷人榜")
                {
                    string res = BOT.getMoneyManager().showPoorest();
                    if (!string.IsNullOrWhiteSpace(res))
                    {
                        msg.str = res;
                        BOT.sendBack(msg);
                        return(true);
                    }
                }

                if (cmd == "个人信息")
                {
                    string res = $"{money.getUserInfo(msg.from)}\r\n{getRHInfo(msg.from)}";
                    if (!string.IsNullOrWhiteSpace(res))
                    {
                        msg.str = res;
                        BOT.sendBack(msg);
                        return(true);
                    }
                }
                else if (cmd == "赛马")
                {
                    int num = 5;
                    if (!matches.ContainsKey(group))
                    {
                        matches[group] = new RHMatch(group, this);
                    }
                    matches[group].begin(num, 100);
                    return(true);
                }
                else if (cmd == "胜率榜")
                {
                    msg.str = showBigWinner();
                    BOT.sendBack(msg);
                    return(true);
                }
                else if (cmd == "败率榜")
                {
                    msg.str = showBigLoser();
                    BOT.sendBack(msg);
                    return(true);
                }
                else if (cmd == "赌狗榜")
                {
                    msg.str = showMostPlayTime();
                    BOT.sendBack(msg);
                    return(true);
                }
                else
                {
                    var trygetbet = Regex.Match(cmd, @"(\d+)号\s*(\d+)");
                    if (trygetbet.Success)
                    {
                        try
                        {
                            int roadnum = int.Parse(trygetbet.Groups[1].ToString());
                            int money   = int.Parse(trygetbet.Groups[2].ToString());
                            addBet(group, user, roadnum, money);
                            return(true);
                        }
                        catch (Exception ex)
                        {
                            FileHelper.Log(ex);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                FileHelper.Log(ex);
            }

            return(false);
        }