chore: use user role instead of admin list

This commit is contained in:
2024-10-19 19:29:03 +08:00
parent 9381ef8637
commit 8fd92b8fed
5 files changed
+60 -64

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
[versions] [versions]
kotlinVersion = "2.0.20" kotlinVersion = "2.0.20"
ronebotVersion = "1.13.5" ronebotVersion = "1.13.6"
shadowVersion = "8.3.0" shadowVersion = "8.3.0"
okhttpVersion = "5.0.0-alpha.14" okhttpVersion = "5.0.0-alpha.14"
exposedVersion = "0.53.0" exposedVersion = "0.53.0"
@@ -8,7 +8,6 @@
package cn.rtast.fancybot.commands package cn.rtast.fancybot.commands
import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.annotations.CommandDescription
import cn.rtast.fancybot.configManager
import cn.rtast.fancybot.enums.CommandAction import cn.rtast.fancybot.enums.CommandAction
import cn.rtast.fancybot.util.file.insertActionRecord import cn.rtast.fancybot.util.file.insertActionRecord
import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.entity.GroupMessage
@@ -20,12 +19,12 @@ class EchoCommand : BaseCommand() {
override val commandNames = listOf("/echo") override val commandNames = listOf("/echo")
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) { override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (message.sender.userId !in configManager.admins) { if (message.sender.isAdmin || message.sender.isOwner) {
listener.sendGroupMessage(message.groupId, args.joinToString(" "))
insertActionRecord(CommandAction.Echo, message.sender.userId)
} else {
message.reply("你不许用echo") message.reply("你不许用echo")
return
} }
listener.sendGroupMessage(message.groupId, args.joinToString(" "))
insertActionRecord(CommandAction.Echo, message.sender.userId)
} }
} }
@@ -34,11 +33,11 @@ class ShuffleEchoCommand : BaseCommand() {
override val commandNames = listOf("/secho", "/se") override val commandNames = listOf("/secho", "/se")
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) { override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (message.sender.userId !in configManager.admins) { if (message.sender.isAdmin || message.sender.isOwner) {
message.reply(message.rawMessage.toList().shuffled().joinToString(""))
insertActionRecord(CommandAction.Echo, message.sender.userId)
} else{
message.reply("你不许用echo") message.reply("你不许用echo")
return
} }
message.reply(message.rawMessage.toList().shuffled().joinToString(""))
insertActionRecord(CommandAction.Echo, message.sender.userId)
} }
} }
@@ -8,7 +8,6 @@
package cn.rtast.fancybot.commands.misc package cn.rtast.fancybot.commands.misc
import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.annotations.CommandDescription
import cn.rtast.fancybot.configManager
import cn.rtast.fancybot.enums.CommandAction import cn.rtast.fancybot.enums.CommandAction
import cn.rtast.fancybot.util.file.insertActionRecord import cn.rtast.fancybot.util.file.insertActionRecord
import cn.rtast.rob.entity.ArrayMessage import cn.rtast.rob.entity.ArrayMessage
@@ -22,14 +21,17 @@ class AntiRevokeCommand : BaseCommand() {
override val commandNames = listOf("/revoke", "/rv") override val commandNames = listOf("/revoke", "/rv")
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) { override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (message.sender.userId !in configManager.admins) message.reply("你不许用防撤回") if (message.sender.isAdmin || message.sender.isOwner) {
val messageId = args.first().toLong() val messageId = args.first().toLong()
val getMsg = listener.getMessage(messageId) val getMsg = listener.getMessage(messageId)
val msgList = mutableListOf<ArrayMessage>() val msgList = mutableListOf<ArrayMessage>()
msgList.add(ArrayMessage(ArrayMessageType.at, ArrayMessage.Data(qq = message.sender.userId.toString()))) msgList.add(ArrayMessage(ArrayMessageType.at, ArrayMessage.Data(qq = message.sender.userId.toString())))
msgList.add(ArrayMessage(ArrayMessageType.text, ArrayMessage.Data(text = "\n被撤回的消息如下: \n"))) msgList.add(ArrayMessage(ArrayMessageType.text, ArrayMessage.Data(text = "\n被撤回的消息如下: \n")))
msgList.addAll(getMsg.message) msgList.addAll(getMsg.message)
listener.sendGroupMessage(message.groupId, msgList) listener.sendGroupMessage(message.groupId, msgList)
insertActionRecord(CommandAction.AntiRevoke, message.sender.userId, getMsg.messageId.toString()) insertActionRecord(CommandAction.AntiRevoke, message.sender.userId, getMsg.messageId.toString())
} else {
message.reply("你不许用防撤回")
}
} }
} }
@@ -49,17 +49,13 @@ class SendMailCommand : BaseCommand() {
message.reply("发送`/mail <收件人地址>`即可发送测试邮件~") message.reply("发送`/mail <收件人地址>`即可发送测试邮件~")
return return
} }
if (message.sender.userId !in configManager.admins) { if (message.sender.isAdmin || message.sender.isOwner) {
val msg = MessageChain.Builder() val target = args.first()
.addReply(message.messageId) this.sendMail(target)
.addText("你不许发邮件") message.reply("正在发送邮件, 请查收~(可能会出现在垃圾桶中~)")
.build() insertActionRecord(CommandAction.SendMail, message.sender.userId, target)
listener.sendGroupMessage(message.groupId, msg) } else {
return message.reply("你不许发邮件")
} }
val target = args.first()
this.sendMail(target)
message.reply("正在发送邮件, 请查收~(可能会出现在垃圾桶中~)")
insertActionRecord(CommandAction.SendMail, message.sender.userId, target)
} }
} }
@@ -8,7 +8,6 @@
package cn.rtast.fancybot.commands.niuzi package cn.rtast.fancybot.commands.niuzi
import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.annotations.CommandDescription
import cn.rtast.fancybot.configManager
import cn.rtast.fancybot.niuziBankManager import cn.rtast.fancybot.niuziBankManager
import cn.rtast.fancybot.niuziManager import cn.rtast.fancybot.niuziManager
import cn.rtast.fancybot.util.misc.getUserName import cn.rtast.fancybot.util.misc.getUserName
@@ -27,42 +26,42 @@ class NiuziManagerCommand : BaseCommand() {
message.reply("此命令可以管理成员的牛子或者银行账户") message.reply("此命令可以管理成员的牛子或者银行账户")
return return
} }
if (message.sender() !in configManager.admins) { if (message.sender.isAdmin || message.sender.isOwner) {
message.reply("你没权限呢!") val target = message.message.find { it.type == ArrayMessageType.at }!!.data.qq!!.toLong()
return val method = args[1]
} val amount = args.last().toDouble()
val target = message.message.find { it.type == ArrayMessageType.at }!!.data.qq!!.toLong() when (method) {
val method = args[1] "set", "s", "设置" -> {
val amount = args.last().toDouble() val type = args[2]
when (method) { when (type) {
"set", "s", "设置" -> { "yh", "银行" -> {
val type = args[2] val before = niuziBankManager.getUser(target)
when (type) { niuziBankManager.deposit(target, amount, listener.getUserName(message.groupId, target))
"yh", "银行" -> { val after = niuziBankManager.getUser(target)
val before = niuziBankManager.getUser(target) val msg = MessageChain.Builder()
niuziBankManager.deposit(target, amount, listener.getUserName(message.groupId, target)) .addText("设置成功! 金额: $amount")
val after = niuziBankManager.getUser(target) .addNewLine()
val msg = MessageChain.Builder() .addText("设置前余额: ${before?.balance?.toFloat()} | 设置后余额: ${after?.balance?.toFloat()}")
.addText("设置成功! 金额: $amount") .build()
.addNewLine() message.reply(msg)
.addText("设置前余额: ${before?.balance?.toFloat()} | 设置后余额: ${after?.balance?.toFloat()}") }
.build()
message.reply(msg)
}
else -> { else -> {
val before = niuziManager.getUser(target) val before = niuziManager.getUser(target)
niuziManager.updateLength(target, amount) niuziManager.updateLength(target, amount)
val after = niuziManager.getUser(target) val after = niuziManager.getUser(target)
val msg = MessageChain.Builder() val msg = MessageChain.Builder()
.addText("设置成功! 金额: $amount") .addText("设置成功! 金额: $amount")
.addNewLine() .addNewLine()
.addText("设置前长度: ${before?.length?.toFloat()} | 设置后长度: ${after?.length?.toFloat()}") .addText("设置前长度: ${before?.length?.toFloat()} | 设置后长度: ${after?.length?.toFloat()}")
.build() .build()
message.reply(msg) message.reply(msg)
}
} }
} }
} }
} else {
message.reply("你没权限呢!")
} }
} }
} }