增加翻页参数到list子命令

更新版本到v1.2.1
This commit is contained in:
2022-12-11 12:28:41 +08:00
parent f8c7485eca
commit f20fd9b807
4 changed files with 19 additions and 9 deletions

View File

@ -8,7 +8,7 @@ MiraiConsolePlugin 自定义戳一戳回复消息
/jnr add [weight] # 添加回复消息权重默认为1 /jnr add [weight] # 添加回复消息权重默认为1
/jnr add <message> [weight] # 添加简单回复消息权重默认为1 /jnr add <message> [weight] # 添加简单回复消息权重默认为1
/jnr clear # 清空回复消息列表 /jnr clear # 清空回复消息列表
/jnr list # 列出当前回复消息列表 /jnr list [page] [pageSize] # 列出当前回复消息列表,参数可翻页
/jnr remove <index> # 删除指定索引的回复消息 /jnr remove <index> # 删除指定索引的回复消息
/jnr reload # 重载配置 /jnr reload # 重载配置
``` ```

View File

@ -7,7 +7,7 @@ plugins {
} }
group = "top.jie65535" group = "top.jie65535"
version = "1.2.0" version = "1.2.1"
repositories { repositories {
mavenLocal() mavenLocal()

View File

@ -15,6 +15,7 @@ import net.mamoe.mirai.message.data.PlainText
import net.mamoe.mirai.message.data.buildForwardMessage import net.mamoe.mirai.message.data.buildForwardMessage
import net.mamoe.mirai.message.data.isContentBlank import net.mamoe.mirai.message.data.isContentBlank
import top.jie65535.jnr.JNudgeReply.reload import top.jie65535.jnr.JNudgeReply.reload
import kotlin.math.min
object JNRCommand : CompositeCommand( object JNRCommand : CompositeCommand(
JNudgeReply, "jnr", JNudgeReply, "jnr",
@ -84,7 +85,7 @@ object JNRCommand : CompositeCommand(
@SubCommand @SubCommand
@Description("列出当前回复消息列表") @Description("列出当前回复消息列表")
suspend fun CommandSender.list() { suspend fun CommandSender.list(page: Int = 0, pageSize: Int = 50) {
val list = JNRPluginConfig.replyMessageList val list = JNRPluginConfig.replyMessageList
if (list.isEmpty()) { if (list.isEmpty()) {
sendMessage("当前列表为空") sendMessage("当前列表为空")
@ -97,11 +98,20 @@ object JNRCommand : CompositeCommand(
sendMessage(sb.toString()) sendMessage(sb.toString())
}, { }, {
if (list.size > 1) { if (list.size > 1) {
sendMessage(buildForwardMessage(subject) { val begin = page * pageSize
for (i in list.indices) { val end = min(list.size, (page + 1) * pageSize)
bot named "[$i] (${list[i].weight})" says list[i].message.deserializeMiraiCode() if (begin < 0 || end <= begin) {
} sendMessage("翻页参数错误")
}) } else {
sendMessage(buildForwardMessage(subject) {
for (i in begin until end) {
bot named "[$i] (${list[i].weight})" says list[i].message.deserializeMiraiCode()
}
if (end < list.size) {
bot says "当前显示 $begin~$end${list.size}"
}
})
}
} else { } else {
sendMessage(list[0].message.deserializeMiraiCode()) sendMessage(list[0].message.deserializeMiraiCode())
} }

View File

@ -18,7 +18,7 @@ object JNudgeReply : KotlinPlugin(
JvmPluginDescription( JvmPluginDescription(
id = "me.jie65535.mirai-console-jnr-plugin", id = "me.jie65535.mirai-console-jnr-plugin",
name = "J Nudge Reply", name = "J Nudge Reply",
version = "1.2.0", version = "1.2.1",
) { ) {
author("jie65535") author("jie65535")
info("""自定义戳一戳回复插件""") info("""自定义戳一戳回复插件""")