feat: add anti revoke command

This commit is contained in:
2024-09-02 11:30:58 +08:00
parent e7d2336759
commit 8bbb493afa
12 files changed
+98 -23

No files matched your search

@@ -0,0 +1,42 @@
/*
* Copyright © 2024 RTAkland
* Author: RTAkland
* Date: 2024/9/1
*/
package cn.rtast.fancybot.commands
import cn.rtast.fancybot.util.toJson
import cn.rtast.rob.entity.GetMessage
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
class AntiRevokeCommand : BaseCommand() {
override val commandNames = listOf("/revoke", "/rv", "/防撤回")
override suspend fun executeGroup(listener: OBMessage, message: GroupMessage, args: List<String>) {
val messageId = args.first().toLong()
listener.getMessage(messageId, "revoke", message.groupId)
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
.addText("正在获取消息中...")
.build()
listener.sendGroupMessage(message.groupId, msg)
}
companion object {
suspend fun getMessageCallback(listener: OBMessage, message: GetMessage) {
val msg = MessageChain.Builder()
.addAt(message.data.sender.userId)
.addNewLine()
.addText("被撤回的消息如下: ")
.addNewLine()
.addText(message.data.message.toJson())
.build()
listener.sendGroupMessage(message.data.groupId!!, msg)
}
}
}
@@ -11,7 +11,7 @@ import cn.rtast.fancybot.entity.FKXQS
import cn.rtast.fancybot.util.Http
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.message.MessageChain
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
class FKXQSCommand: BaseCommand() {
@@ -10,7 +10,7 @@ package cn.rtast.fancybot.commands
import cn.rtast.fancybot.util.Http
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.message.MessageChain
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
class HitokotoCommand : BaseCommand() {
@@ -10,7 +10,7 @@ package cn.rtast.fancybot.commands
import cn.rtast.fancybot.util.file.JrrpManager
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.message.MessageChain
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
class JrrpCommand : BaseCommand() {
@@ -14,7 +14,7 @@ import cn.rtast.fancybot.entity.music.SongUrl
import cn.rtast.fancybot.util.Http
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.message.MessageChain
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
import java.time.Instant
@@ -9,7 +9,7 @@ package cn.rtast.fancybot.commands
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.message.MessageChain
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
class QRCodeCommand : BaseCommand() {
@@ -14,16 +14,11 @@ import cn.rtast.fancybot.util.file.SignManager
import cn.rtast.rob.entity.GroupMessage
import cn.rtast.rob.enums.UserRole
import cn.rtast.rob.util.BaseCommand
import cn.rtast.rob.util.message.MessageChain
import cn.rtast.rob.util.ob.MessageChain
import cn.rtast.rob.util.ob.OBMessage
private val signManager = SignManager()
private val items = mapOf(
"色图" to 50,
"黑丝" to 60
)
class SignCommand : BaseCommand() {
override val commandNames = listOf("/签到", "/sign")
@@ -83,6 +78,12 @@ class MyPointCommand : BaseCommand() {
}
}
private val items = mapOf(
"色图" to 50,
"黑丝" to 60,
"白丝" to 70
)
class RedeemCommand : BaseCommand() {
override val commandNames = listOf("/redeem", "/兑换", "/rdm")
@@ -128,7 +129,7 @@ class RedeemCommand : BaseCommand() {
.build()
listener.sendGroupMessage(message.groupId, msg)
when (selectedItemKey) {
"黑丝", "hs", "heisi" -> {
"黑丝" -> {
val url = Http.get<Heisi>("https://v2.api-m.com/api/heisi").data
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
@@ -137,13 +138,22 @@ class RedeemCommand : BaseCommand() {
listener.sendGroupMessage(message.groupId, msg)
}
"色图", "st", "setu" -> {
"色图" -> {
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
.addImage("https://moe.jitsu.top/img/?sort=r18&size=small")
.build()
listener.sendGroupMessage(message.groupId, msg)
}
"白丝" -> {
val url = Http.get<Heisi>("https://v2.api-m.com/api/baisi").data
val msg = MessageChain.Builder()
.addAt(message.sender.userId)
.addImage(url)
.build()
listener.sendGroupMessage(message.groupId, msg)
}
}
}
}