feat: add zibi and unset zibi command, bump rob to 1.8.4

This commit is contained in:
2024-09-19 11:06:40 +08:00
parent d284381554
commit f36c008edf
38 files changed
+120 -84

No files matched your search

@@ -10,12 +10,12 @@ package cn.rtast.fancybot.commands
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class AboutCommand : BaseCommand() {
override val commandNames = listOf("/about", "/关于")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
.addNewLine()
@@ -7,18 +7,22 @@
package cn.rtast.fancybot.commands
import cn.rtast.fancybot.configManager
import cn.rtast.rob.entity.ArrayMessage
import cn.rtast.rob.entity.GetMessage
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.enums.ArrayMessageType
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class AntiRevokeCommand : BaseCommand() {
override val commandNames = listOf("/revoke", "/rv", "/防撤回")
override suspend fun executeGroup(listener: OBMessage, 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("你不许用防撤回")
}
val messageId = args.first().toLong()
listener.getMessage(messageId, "revoke", message.groupId)
val msg = MessageChain.Builder()
@@ -29,7 +33,7 @@ class AntiRevokeCommand : BaseCommand() {
}
companion object {
suspend fun callback(listener: OBMessage, message: GetMessage) {
suspend fun callback(listener: OneBotListener, message: GetMessage) {
val msgList = mutableListOf<ArrayMessage>()
msgList.add(
ArrayMessage(
@@ -16,7 +16,7 @@ import cn.rtast.fancybot.util.str.toJson
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class CompilerCommand : BaseCommand() {
override val commandNames = listOf("/compiler", "/exec")
@@ -24,7 +24,7 @@ class CompilerCommand : BaseCommand() {
private val kotlinCompilerServer = "https://api.kotlinlang.org/api/2.0.20/compiler/run"
private val glotCompilerServer = "https://glot.io/run"
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -9,12 +9,12 @@ package cn.rtast.fancybot.commands
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class EchoCommand : BaseCommand() {
override val commandNames = listOf("/echo")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
listener.sendGroupMessage(message.groupId, args.joinToString(" "))
}
}
@@ -12,12 +12,12 @@ import cn.rtast.fancybot.util.Http
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class FKXQSCommand : BaseCommand() {
override val commandNames = listOf("/fkxqs", "/fk", "/疯狂星期四")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val response = Http.get<FKXQS>("https://api.shadiao.pro/kfc").data.text
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -11,12 +11,12 @@ import cn.rtast.fancybot.commands
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class HelpCommand : BaseCommand() {
override val commandNames = listOf("/help", "/帮助")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val allCommands = commands.joinToString("\n") {
"[${it.javaClass.name.split(".").last().replace("Command", "")}] 命令:${it.commandNames.joinToString(",")}"
}
@@ -11,12 +11,12 @@ import cn.rtast.fancybot.util.Http
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class HitokotoCommand : BaseCommand() {
override val commandNames = listOf("/hitokoto", "/1")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val response = Http.get("https://v1.jinrishici.com/rensheng/mengxiang.txt")
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -10,12 +10,12 @@ package cn.rtast.fancybot.commands
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class LikeMeCommand : BaseCommand() {
override val commandNames = listOf("赞我")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
listener.sendLike(message.sender.userId, 10)
val msg = MessageChain.Builder()
.addReply(message.messageId)
@@ -11,12 +11,12 @@ import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.enums.ArrayMessageType
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class RUACommand : BaseCommand() {
override val commandNames = listOf("/rua", "rua")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -12,7 +12,7 @@ import cn.rtast.fancybot.util.randomBooleanWithProbability
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class RemakeCommand : BaseCommand() {
override val commandNames = listOf("/remake", "/重开", "remake", "重开")
@@ -28,7 +28,7 @@ class RemakeCommand : BaseCommand() {
"鸽子", "鼠鼠", "化石", "狗狗"
)
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val isSuccess = randomBooleanWithProbability(0.7)
val msg = MessageChain.Builder().addReply(message.messageId)
if (isSuccess) {
@@ -11,7 +11,7 @@ import cn.rtast.fancybot.configManager
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import org.simplejavamail.api.mailer.config.TransportStrategy
import org.simplejavamail.email.EmailBuilder
import org.simplejavamail.mailer.MailerBuilder
@@ -40,7 +40,7 @@ class SendMailCommand : BaseCommand() {
this.mailer.sendMail(email)
}
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -8,21 +8,28 @@
package cn.rtast.fancybot.commands
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.entity.PrivateMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
val users = mutableMapOf<Long, Long>()
class ZiBiCommand : BaseCommand() {
override val commandNames = listOf("/自闭", "自闭")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
try {
users.remove(message.sender.userId)
val duration = if (args.isEmpty()) 1 else args.first().toInt()
message.sender.ban(duration * 60)
val msg = MessageChain.Builder()
.addText("你先自闭${duration}分钟吧~")
.addNewLine()
.addText("私聊发送`我想开了`即可取消禁言~")
.build()
message.reply(msg)
users[message.sender.userId] = message.groupId
} catch (_: Exception) {
val msg = MessageChain.Builder()
.addText("你输入有误所以我决定让你自闭1天~")
@@ -31,4 +38,24 @@ class ZiBiCommand : BaseCommand() {
message.sender.ban(86400)
}
}
}
class UnsetZiBiCommand : BaseCommand() {
override val commandNames = listOf("我想开了")
override suspend fun executePrivate(listener: OneBotListener, message: PrivateMessage, args: List<String>) {
if (!users.any { it.key == message.sender.userId }) {
val msg = MessageChain.Builder()
.addText("你没有在自闭列表中~")
.build()
message.reply(msg)
return
}
listener.setGroupBan(users.getValue(message.sender.userId), message.sender.userId, 0)
val msg = MessageChain.Builder()
.addText("祝你天天开心不要自闭~~")
.build()
message.reply(msg)
users.remove(message.sender.userId)
}
}
@@ -12,12 +12,12 @@ import cn.rtast.fancybot.util.Http
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class CigaretteCommand : BaseCommand() {
override val commandNames = listOf("/香烟", "/tobacco", "/cigarette")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -16,7 +16,7 @@ import cn.rtast.fancybot.util.toByteArray
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import java.awt.Color
import java.awt.Font
import java.awt.image.BufferedImage
@@ -75,7 +75,7 @@ class DomainPriceCommand : BaseCommand() {
}
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -16,12 +16,12 @@ import cn.rtast.fancybot.util.str.toJson
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class GPTCommand : BaseCommand() {
override val commandNames = listOf("/gpt")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -18,7 +18,7 @@ import cn.rtast.fancybot.util.toByteArray
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import java.awt.Color
import java.awt.Font
import java.awt.image.BufferedImage
@@ -65,7 +65,7 @@ class GithubUserCommand : BaseCommand() {
return canvas.toByteArray().encodeToBase64()
}
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -13,14 +13,14 @@ import cn.rtast.motdpinger.MotdPinger
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class MCPingCommand : BaseCommand() {
override val commandNames = listOf("/mcping", "/mcPing")
private val pingInstance = MotdPinger()
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -16,7 +16,7 @@ import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.enums.MusicShareType
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import java.time.Instant
class MusicCommand : BaseCommand() {
@@ -33,7 +33,7 @@ class MusicCommand : BaseCommand() {
}
}
private suspend fun legacyMusicCommand(listener: OBMessage, message: GroupMessage, args: List<String>) {
private suspend fun legacyMusicCommand(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -104,7 +104,7 @@ class MusicCommand : BaseCommand() {
}
}
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.last() == "legacy" || args.last() == "l" || args.last() in "0".."4") {
this.legacyMusicCommand(listener, message, args)
return
@@ -136,7 +136,7 @@ class MusicPlayUrlCommand : BaseCommand() {
return Http.get<SongUrl>("${configManager.ncmAPI}/song/url", mapOf("id" to id)).data.first().url
}
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val url = if (args.last() == "id" || args.last() == "i") {
val id = args.first()
this.getPlayUrl(id)
@@ -10,13 +10,13 @@ package cn.rtast.fancybot.commands.lookup
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import java.net.InetAddress
class NslookupCommand : BaseCommand() {
override val commandNames = listOf("/nslookup", "/ns")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val msg = MessageChain.Builder()
.addReply(message.messageId)
.addText("域名: ${args.first()}解析后的IP地址为: ")
@@ -12,7 +12,7 @@ import cn.rtast.fancybot.util.Http
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class PixivCommand : BaseCommand() {
override val commandNames = listOf("/pixiv", "/p")
@@ -20,7 +20,7 @@ class PixivCommand : BaseCommand() {
private val pixivRankingURL = "https://proxy.rtast.cn/https/www.pixiv.net/ranking.php?format=json&mode=daily&p=1"
private val imageProxyURL = "https://pixiv.nl"
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -10,12 +10,12 @@ package cn.rtast.fancybot.commands.lookup
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class QRCodeCommand : BaseCommand() {
override val commandNames = listOf("/qrcode", "/qr", "/二维码")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val content = args.joinToString(" ")
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -20,7 +20,7 @@ import cn.rtast.fancybot.util.toByteArray
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import java.awt.Color
import java.awt.Font
import java.awt.image.BufferedImage
@@ -56,7 +56,7 @@ class WeatherCommand : BaseCommand() {
return emptyImage.toByteArray().encodeToBase64()
}
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -20,7 +20,7 @@ import cn.rtast.fancybot.util.str.setTruncat
import cn.rtast.fancybot.util.toByteArray
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import okhttp3.OkHttpClient
import okhttp3.Request
import java.awt.Color
@@ -150,7 +150,7 @@ object BVParseCommand {
}
}
suspend fun parse(listener: OBMessage, bvid: String, message: GroupMessage) {
suspend fun parse(listener: OneBotListener, bvid: String, message: GroupMessage) {
val videoInfo = this.getVideoStat(bvid)
val viewCount = this.getViewCount(bvid, videoInfo.data.cid)
val shortUrl = this.generateShortUrl(bvid, videoInfo.data.aid)
@@ -19,7 +19,7 @@ import cn.rtast.fancybot.util.str.setTruncat
import cn.rtast.fancybot.util.toByteArray
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import java.awt.Color
import java.awt.Font
import java.awt.RenderingHints
@@ -114,7 +114,7 @@ object GitHubParseCommand {
return canvas.toByteArray().encodeToBase64()
}
suspend fun parse(listener: OBMessage, message: GroupMessage) {
suspend fun parse(listener: OneBotListener, message: GroupMessage) {
val path = message.rawMessage
.replace(".git", "")
.replace("https://github.com/", "")
@@ -10,11 +10,11 @@ package cn.rtast.fancybot.commands.parse
import cn.rtast.rob.entity.GetMessage
import cn.rtast.rob.enums.ArrayMessageType
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
object ImageURLCommand {
suspend fun callback(listener: OBMessage, message: GetMessage) {
suspend fun callback(listener: OneBotListener, message: GetMessage) {
val msg = MessageChain.Builder()
.addReply(message.data.messageId)
.addText("哈哈哈哈图片来咯~")
@@ -11,7 +11,7 @@ import cn.rtast.fancybot.util.str.encodeToBase64
import cn.rtast.rob.entity.GetMessage
import cn.rtast.rob.enums.ArrayMessageType
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
import com.madgag.gif.fmsware.AnimatedGifEncoder
import com.madgag.gif.fmsware.GifDecoder
import java.io.ByteArrayOutputStream
@@ -37,7 +37,7 @@ object ReverseGIFCommand {
return gifBytes.encodeToBase64()
}
suspend fun callback(listener: OBMessage, message: GetMessage) {
suspend fun callback(listener: OneBotListener, message: GetMessage) {
val gifUrl = if (message.data.message.find { it.type == ArrayMessageType.mface } == null) {
message.data.message.find { it.type == ArrayMessageType.image }!!.data.file!!
} else {
@@ -11,14 +11,14 @@ import cn.rtast.fancybot.util.file.JrrpManager
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class JrrpCommand : BaseCommand() {
override val commandNames = listOf("/jrrp", "/今日人品")
private val jrrpManager = JrrpManager()
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (jrrpManager.isJrrped(message.sender.userId)) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -13,12 +13,12 @@ import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.enums.UserRole
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class MyPointCommand : BaseCommand() {
override val commandNames = listOf("/我的点数", "/mp")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
// query target's point
if (args.isNotEmpty() && (message.sender.role == UserRole.admin || message.sender.userId in configManager.admins)) {
val targetId = args.first().toLong()
@@ -12,12 +12,12 @@ import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.enums.ArrayMessageType
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class NiuziSignCommand : BaseCommand() {
override val commandNames = listOf("牛子签到")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (niuziManager.isSigned(message.sender.userId)) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -40,7 +40,7 @@ class NiuziSignCommand : BaseCommand() {
class JiJianCommand : BaseCommand() {
override val commandNames = listOf("击剑", "jj")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -126,7 +126,7 @@ class JiJianCommand : BaseCommand() {
class MyNiuziCommand : BaseCommand() {
override val commandNames = listOf("我的牛子")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
val niuzi = niuziManager.getUser(message.sender.userId)
if (niuzi == null) {
val msg = MessageChain.Builder()
@@ -12,12 +12,12 @@ import cn.rtast.fancybot.signManager
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class RedeemCommand : BaseCommand() {
override val commandNames = listOf("/redeem", "/兑换", "/rdm")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (args.isEmpty()) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -11,13 +11,13 @@ import cn.rtast.fancybot.signManager
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import cn.rtast.rob.util.ob.OneBotListener
class SignCommand : BaseCommand() {
override val commandNames = listOf("/签到", "/sign")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) {
if (signManager.isSigned(message.sender.userId)) {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)