&&问题很大
&&不确定出在哪里
&&时好时坏就很神奇
&&不能承压,快速连续执行就肯定会坏
&&明明理论上可以的(忧伤)
&&慢速使用貌似没问题
&&请大佬们指出错误所在
好像是冲突,但怎么冲突的emmm。。。
##文件结构
##()是要写入值的说明
机器人/数据/(QQ)/排行 1 (排名)
/金币 1 (数量)
/人数 1 (人数)
/排行榜 (排名) (QQ)
/缓存 1 (计数)
##需要提前写入一个排名
##【到排行榜的具体内容了】
##【两种形式,几乎同样的问题,】
##【为避免被人触发而使用[内部]】
##【向下对比形式】
##【向上对比形式】
##【主动查看】
##【人数过多?可以采取分页形式】
##【加个抽奖看效果】
以上
&&不确定出在哪里
&&时好时坏就很神奇
&&不能承压,快速连续执行就肯定会坏
&&明明理论上可以的(忧伤)
&&慢速使用貌似没问题
&&请大佬们指出错误所在
好像是冲突,但怎么冲突的emmm。。。
##文件结构
##()是要写入值的说明
机器人/数据/(QQ)/排行 1 (排名)
/金币 1 (数量)
/人数 1 (人数)
/排行榜 (排名) (QQ)
/缓存 1 (计数)
##需要提前写入一个排名
加入 ##【没加入排名肯定为0】 如果:$读 机器人/数据/%QQ%/排名 1 0$!=0 你已经加入了 返回 如果尾 ##【已有的人数为a】 a:$读 机器人/人数 1 0$ ##【现在多了一个人】 a:[%a%+1] ##【新来的什么都没有,自然是最后一名】 $写 机器人/排行榜 %a% %QQ%$ $写 机器人/数据/%QQ%/排行 1 %a%$ ##【不能忘记把人数更新】 $写 机器人/人数 1 %a%$ 加入完成! |
##【到排行榜的具体内容了】
##【两种形式,几乎同样的问题,】
##【为避免被人触发而使用[内部]】
##【向下对比形式】
[内部]排行榜刷新 ##【“,”前是对比的排名,“,”后不用说了吧~】 $调用 0 排行刷新1,%QQ%$ [内部]排行刷新([0-9]+),([0-9]+) ##【获取前者QQ,文件结构注明了】 a:$读 机器人/排行榜 %括号1% 0$ 如果:%a%==%括号2% ##【自己和自己没法比了对吧,并且这个刷新方式再往下就会出错的,所以,刷新结束。】 返回 如果尾 ##【前者金币】 b:$读 机器人/数据/%a%/金币 1 0$ ##【后者金币】 c:$读 机器人/数据/%括号2%/金币 1 0$ ##【看谁的金币多,这里是否用“=”差别不大,看个人喜好自己斟酌】 如果:%b%<=%c% ##【此时后者比前者金币多(或新),替换他们的排名,先将后者排名读出来】 d:$读 机器人/数据/%括号2%/排名 1 0$ $写 机器人/数据/%括号2%/排行 1 %括号1%$ $写 机器人/数据/%a%/排行 1 %d%$ $写 机器人/排行榜 %括号1% %括号2%$ $写 机器人/排行榜 %d% %a%$ ##【让金币少的继续向下对比】 ##【这里将延迟改为0也有出错,往长加又容易冲突】 $调用 10 排行刷新[%括号1%+1],%a%$ 返回 如果尾 ##【继续向下对比】 $调用 10 排行刷新[%括号1%+1],%括号2%$ |
##【向上对比形式】
[内部]排行榜刷新 a:$读 机器人/数据/%QQ%/排行 1 0$ $调用 0 排行刷新[%a%-1],%QQ%$ [内部]排行刷新([0-9]+),([0-9]+) 如果:%括号1%<1 ##【一比一只能是一喽,刷新结束】 返回 如果尾 ##【前者QQ】 a:$读 机器人/排行榜 %括号1% 0$ ##【前者金币】 b:$读 机器人/数据/%a%/金币 1 0$ ##【后者金币】 c:$读 机器人/数据/%括号2%/金币 1 0$ ##【金币数对比】 如果:%b%<=%c% ##【此时后者比前者金币多(或新),替换排名】 ##【后者排名】 d:$读 机器人/数据/%括号2%/排名 1 0$ $写 机器人/数据/%括号2%/排行 1 %括号1%$ $写 机器人/数据/%a%/排行 1 %d%$ $写 机器人/排行榜 %括号1% %括号2%$ $写 机器人/排行榜 %d% %a%$ ##【让金币多的继续向上对比】 $调用 10 排行刷新[%括号1%-1],%括号2%$ 返回 如果尾 ##【不用比了,刷新结束】 |
##【主动查看】
排行榜 a:$读 机器人/缓存 1 0$ b:$读 机器人/人数 1 0$ 如果:%a%>=%b% ##【此时输出完成】 共计%b%人。 ##【缓存清零】 $写 机器人/缓存 1 0$ 返回 如果尾 ##【缓存可以理解为已完成输出数量】 a:[%a%+1] $写 机器人/缓存 1 %a%$ c:$读 机器人/排行榜 %a% 0$ d:$读 机器人/数据/%c%/金币 1 0$ ##【如果因为不同群获取不到昵称,可以在〖加入〗把群号也记录上】 e:$群昵称 %群号% %c%$ 如果:%a%==1 ##【此时输出开头】 =========排行榜=========\r\n 排名 昵称 金币\r\n %a% %e%(%c%) %d%\r\n ##【下一条,用回调使消息合并】 $回调 排行榜$ 返回 如果尾 ##【中间部分】 %a% %e%(%c%) %d%\r\n ##【下一条】 $回调 排行榜$ |
##【人数过多?可以采取分页形式】
排行榜 ##【快捷方式】 $调用 0 排行榜1$ 排行榜 ?([0-9]+) ##【将页数换为排名「十名一页」】 a:%括号1%0 ##【总页数】 b:$读 机器人/人数 1 0$ b:[%b%/10] b:[%b%+1] ##【发言者数据】 c:$读 机器人/数据/%QQ%/排行 1 0$ d:$读 机器人/数据/%QQ%/金币 1 0$ e:$群昵称 %群号% %QQ%$ =========排行榜=========\r\n 排名 昵称 金币\r\n $回调 排行数据[%a%-9]$ $回调 排行数据[%a%-8]$ $回调 排行数据[%a%-7]$ $回调 排行数据[%a%-6]$ $回调 排行数据[%a%-5]$ $回调 排行数据[%a%-4]$ $回调 排行数据[%a%-3]$ $回调 排行数据[%a%-2]$ $回调 排行数据[%a%-1]$ $回调 排行数据%a%$ 第%括号1%页/共%b%页\r\n ========================\r\n 昵称:%e%\r\n QQ:%QQ%\r\n 排名:%c%\r\n 金币:%d%\r\n ========================\r\n 可用指令:排行榜 (页数) [内部]排行数据([0-9]+) a:$读 机器人/排行榜 %括号1% 0$ 如果:%a%==0 ##【后面都没有了】 返回 如果尾 b:$读 机器人/数据/%a%/金币 1 0$ c:$群昵称 %群号% %a%$ %括号1% %c%(%a%) %b%\r\n |
##【加个抽奖看效果】
抽奖 ##【如果不加这个判断的话,会出错的!!!】 如果:$读 机器人/数据/%QQ%/排行 1 0$==0 你还未加入 返回 如果尾 a:%随机数10-100% $调用 0 加金币%a%$ 你抽到了%a%枚金币。 [内部]加金币([0-9]+) a:$读 机器人/数据/%QQ%/金币 1 0$ b:[%a%+%括号1%] $写 机器人/数据/%QQ%/金币 1 %b%$ $调用 100 排行榜刷新$ |
以上