如题,mirai文档写支持禁言功能,但是本人太菜…不懂java,有无大佬指点一下或者给个思路,谢谢啦!!
怎样添加禁言功能
- 已编辑
- 最佳回复由 GeMini_V 选择
建立在你已经读过文档且已经创立了一个mirai插件工程
你首先需要获取群成员对象(Member),之后调用Member.mute(times)方法即可
在群消息监听中使用event.sender即可获取到消息发送者
event.sender.mute(600) //禁言消息发送者10分钟
虽然但是,还是先对JVM语言有所了解比较好
实际上,这个功能可以通过Lua插件实现
eventMsg(".group ban " .. QQ .. " " .. time, msg.fromGroup, <发送该禁言命令的QQ>)
即通过eventMsg构造一条虚拟指令,视为通过最后一个参数的QQ发送了一条禁言命令
顺带一提,编写mirai插件时,先使用event.group.botPermission>Member.permission判断bot权限是否足够
而Lua插件中,最后一个参数的QQ应为bot管理员,且bot具有权限
没事 实现就好(
但我真不是什么大佬(逃
9 天 后
试了一下RainChain大佬提供的lua脚本思路来实现禁言功能,代码如下:
`msg_order = {}
function drawtab(tab)
return tab[ranint(1, #tab)]
end
msg_order[“禁言”]=“shut”
function shut(msg)
local banq = msg.fromMsg
local time = {1, 2, 3, 4, 5}
eventMsg(“.group ban ” .. banq .. drawtab(time), msg.fromGroup, msg.fromQQ)
end`