From 41934a9aa88a267b2f12afe069bfd8cc0ada283e Mon Sep 17 00:00:00 2001 From: jie65535 Date: Mon, 3 Oct 2022 23:37:08 +0800 Subject: [PATCH] Impl alias args (#8) --- src/main/kotlin/JGrasscutterCommand.kt | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/main/kotlin/JGrasscutterCommand.kt b/src/main/kotlin/JGrasscutterCommand.kt index 2621799..c67c0f9 100644 --- a/src/main/kotlin/JGrasscutterCommand.kt +++ b/src/main/kotlin/JGrasscutterCommand.kt @@ -116,11 +116,22 @@ object JGrasscutterCommand : KotlinPlugin( } // 检查是否使用别名 - var command = PluginConfig.commandAlias[message] - command = if (command.isNullOrEmpty()) + val sp = message.indexOf(' ') + var command = if (sp > 0) { // 如果中间存在空格,则取空格前的内容匹配别名,空格后的内容作为参数附加到命令 + PluginConfig.commandAlias[message.substring(0 until sp)] + } else { + PluginConfig.commandAlias[message] + } + command = if (command.isNullOrEmpty()) { message - else - command.replace('|', '\n') // 若为多行命令,替换为换行 + } else { + if (sp in 1 until message.length-1) { // 如果命令存在额外参数 + val args = message.substring(sp+1) + command.replace("|", "$args\n") + args // 为每一行附加参数 + } else { + command.replace('|', '\n') // 若为多行命令,替换为换行 + } + } // 执行的用户 var user: User? = null