From b238ec5f30593f1a827cccf9d5e6a1d419ad33cc Mon Sep 17 00:00:00 2001 From: RTAkland Date: Fri, 25 Oct 2024 19:44:33 +0800 Subject: [PATCH] chore: bump rob version --- gradle/libs.versions.toml | 2 +- src/main/kotlin/cn/rtast/fancybot/FancyBot.kt | 30 ++++++++++++------- .../cn/rtast/fancybot/util/misc/Misc.kt | 4 ++- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 631c5c6..820008c 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] kotlinVersion = "2.0.20" -ronebotVersion = "2.1.2" +ronebotVersion = "2.1.3" shadowVersion = "8.3.0" okhttpVersion = "5.0.0-alpha.14" exposedVersion = "0.53.0" diff --git a/src/main/kotlin/cn/rtast/fancybot/FancyBot.kt b/src/main/kotlin/cn/rtast/fancybot/FancyBot.kt index 5a7c78e..02e32d3 100644 --- a/src/main/kotlin/cn/rtast/fancybot/FancyBot.kt +++ b/src/main/kotlin/cn/rtast/fancybot/FancyBot.kt @@ -24,6 +24,7 @@ import cn.rtast.fancybot.util.misc.initSetuIndex import cn.rtast.rob.ROneBotFactory import cn.rtast.rob.entity.* import cn.rtast.rob.entity.custom.BeKickEvent +import cn.rtast.rob.entity.custom.MemberKickEvent import cn.rtast.rob.entity.custom.MemberLeaveEvent import cn.rtast.rob.entity.lagrange.FileEvent import cn.rtast.rob.entity.lagrange.PokeEvent @@ -159,10 +160,23 @@ class FancyBot : OneBotListener { } override suspend fun onLeaveEvent(event: MemberLeaveEvent) { + val nickname = event.action.getGroupMemberInfo(event.groupId, event.userId).nickname val msg = MessageChain.Builder() - .addText("有人坐飞船离开了本星系~") + .addText("有人坐飞船离开了本星系~(主动退出)") .addNewLine() - .addText("QQ: ${event.userId} | 操作者: ${if (event.operator == 0L) "主动退出" else event.operator}") + .addText("QQ: $nickname(${event.userId})") + .addNewLine() + .addText("下次再见吧~~~") + .build() + event.action.sendGroupMessage(event.groupId, msg) + } + + override suspend fun onMemberKick(event: MemberKickEvent) { + val nickname = event.action.getGroupMemberInfo(event.groupId, event.userId).nickname + val msg = MessageChain.Builder() + .addText("有人坐飞船离开了本星系~(管理员踢出)") + .addNewLine() + .addText("QQ: $nickname(${event.userId})") .addNewLine() .addText("下次再见吧~~~") .build() @@ -192,15 +206,11 @@ suspend fun main() { val fancyBot = FancyBot() val workType = configManager.wsType val accessToken = configManager.accessToken - val instance = if (workType == WSType.Client) { - val address = configManager.wsAddress - ROneBotFactory.createClient(address, accessToken, fancyBot) - .also { it.addListeningGroups(*configManager.listeningGroups.toLongArray()) } - } else { - val port = configManager.wsPort - ROneBotFactory.createServer(port, accessToken, fancyBot) - .also { it.addListeningGroups(*configManager.listeningGroups.toLongArray()) } + val instance = when (workType) { + WSType.Client -> ROneBotFactory.createClient(configManager.wsAddress, accessToken, fancyBot) + WSType.Server -> ROneBotFactory.createServer(configManager.wsPort, accessToken, fancyBot) } + instance.addListeningGroups(*configManager.listeningGroups.toLongArray()) initDatabase() initFilesDir() diff --git a/src/main/kotlin/cn/rtast/fancybot/util/misc/Misc.kt b/src/main/kotlin/cn/rtast/fancybot/util/misc/Misc.kt index e12538f..4a4b3fa 100644 --- a/src/main/kotlin/cn/rtast/fancybot/util/misc/Misc.kt +++ b/src/main/kotlin/cn/rtast/fancybot/util/misc/Misc.kt @@ -15,6 +15,8 @@ import cn.rtast.rob.util.ob.OneBotAction import cn.rtast.rob.util.ob.OneBotListener import java.io.File import kotlin.random.Random +import kotlin.time.Duration.Companion.hours +import kotlin.time.Duration.Companion.seconds fun randomBooleanWithProbability(probability: Double): Boolean { val randomValue = Random.nextInt(100) @@ -53,5 +55,5 @@ fun initBackgroundTasks(instance: BotInstance) { configManager.admins.forEach { instance.action.sendLike(it, 1) } - }, 1000L, 10000000L) + }, 1.seconds, 3.hours) } \ No newline at end of file