mirror of
https://github.com/FloatTech/ZeroBot-Plugin.git
synced 2025-12-19 22:00:11 +08:00
* fix:捕获协程异常 * feat:添加睡眠时间 * feat:添加睡眠管理功能 * fix:修改对标时间 * fix:修改注释函数名,使用一个时间 * feat:让大家能够更加清楚的看到每一个功能 * feat:把群管放在control,增加退群信息 * fix:不会recover * fix:原本的正则限制机器人回复回复的消息,故去掉正则 * fix:添加服务详情,整理manager * feat:chat进control Co-authored-by: Guohuiyuan <haibaraguo@yeahka.com>
38 lines
999 B
Go
38 lines
999 B
Go
// Package choose 选择困难症帮手
|
|
package choose
|
|
|
|
import (
|
|
"math/rand"
|
|
"strconv"
|
|
"strings"
|
|
|
|
zero "github.com/wdvxdr1123/ZeroBot"
|
|
"github.com/wdvxdr1123/ZeroBot/message"
|
|
|
|
"github.com/FloatTech/ZeroBot-Plugin/control"
|
|
)
|
|
|
|
func init() {
|
|
engine := control.Register("choose", &control.Options{
|
|
DisableOnDefault: false,
|
|
Help: "choose\n" +
|
|
"- 选择可口可乐还是百事可乐\n" +
|
|
"- 选择肯德基还是麦当劳还是必胜客",
|
|
})
|
|
engine.OnPrefix("选择").SetBlock(true).FirstPriority().Handle(handle)
|
|
}
|
|
func handle(ctx *zero.Ctx) {
|
|
rawOptions := strings.Split(ctx.State["args"].(string), "还是")
|
|
var options = make([]string, 0)
|
|
for count, option := range rawOptions {
|
|
options = append(options, strconv.Itoa(count+1)+", "+option)
|
|
}
|
|
result := rawOptions[rand.Intn(len(rawOptions))]
|
|
name := ctx.Event.Sender.NickName
|
|
ctx.SendChain(message.Text("> ", name, "\n",
|
|
"你的选项有:", "\n",
|
|
strings.Join(options, "\n"), "\n",
|
|
"你最终会选: ", result,
|
|
))
|
|
}
|