diff --git a/src/main/kotlin/cn/rtast/fancybot/Const.kt b/src/main/kotlin/cn/rtast/fancybot/Const.kt index 021e37e..27d1ad4 100644 --- a/src/main/kotlin/cn/rtast/fancybot/Const.kt +++ b/src/main/kotlin/cn/rtast/fancybot/Const.kt @@ -16,9 +16,9 @@ import cn.rtast.fancybot.commands.misc.* import cn.rtast.fancybot.commands.niuzi.* import cn.rtast.fancybot.commands.parse.AsciiArtCommand import cn.rtast.fancybot.commands.parse.ReverseGIFCommand -import cn.rtast.fancybot.commands.record.JrrpCommand -import cn.rtast.fancybot.commands.record.RedeemCommand -import cn.rtast.fancybot.commands.record.ShortLinkCommand +import cn.rtast.fancybot.commands.misc.JrrpCommand +import cn.rtast.fancybot.commands.niuzi.NiuziRedeemCommand +import cn.rtast.fancybot.commands.misc.ShortLinkCommand import cn.rtast.fancybot.entity.Config import cn.rtast.fancybot.entity.enums.ImageType import cn.rtast.fancybot.entity.enums.WSType @@ -80,7 +80,7 @@ val START_UP_TIME = Instant.now().epochSecond val commands = listOf( EchoCommand(), JrrpCommand(), - RedeemCommand(), HitokotoCommand(), + NiuziRedeemCommand(), HitokotoCommand(), FKXQSCommand(), QRCodeCommand(), AntiRevokeCommand(), MCPingCommand(), WeatherCommand(), CigaretteCommand(), diff --git a/src/main/kotlin/cn/rtast/fancybot/annotations/CommandDescription.kt b/src/main/kotlin/cn/rtast/fancybot/annotations/CommandDescription.kt new file mode 100644 index 0000000..a2895cf --- /dev/null +++ b/src/main/kotlin/cn/rtast/fancybot/annotations/CommandDescription.kt @@ -0,0 +1,12 @@ +/* + * Copyright © 2024 RTAkland + * Author: RTAkland + * Date: 2024/9/26 + */ + + +package cn.rtast.fancybot.annotations + +@Target(AnnotationTarget.CLASS) +@Retention(AnnotationRetention.RUNTIME) +annotation class CommandDescription(val description: String) \ No newline at end of file diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/AboutCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/AboutCommand.kt index 818b5bf..68ee8fc 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/AboutCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/AboutCommand.kt @@ -7,11 +7,13 @@ package cn.rtast.fancybot.commands +import cn.rtast.fancybot.annotations.CommandDescription 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.OneBotListener +@CommandDescription("关于") class AboutCommand : BaseCommand() { override val commandNames = listOf("/about", "/关于") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/EchoCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/EchoCommand.kt index 54d894e..ae325b6 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/EchoCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/EchoCommand.kt @@ -7,10 +7,12 @@ package cn.rtast.fancybot.commands +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("Echo") class EchoCommand : BaseCommand() { override val commandNames = listOf("/echo") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/HelpCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/HelpCommand.kt index 9587410..b097157 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/HelpCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/HelpCommand.kt @@ -7,27 +7,31 @@ package cn.rtast.fancybot.commands +import cn.rtast.fancybot.annotations.CommandDescription 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.OneBotListener +@CommandDescription("AAAA") class HelpCommand : BaseCommand() { override val commandNames = listOf("/help", "/帮助") override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List) { - val allCommands = commands.sortedBy { it::class.simpleName }.joinToString("\n") { - "[${ - it.javaClass.name.split(".") - .last().replace("Command", "") - }] 命令:${it.commandNames.joinToString(",")}" - } val msg = MessageChain.Builder() - .addAt(message.sender.userId) - .addNewLine() - .addText(allCommands) - .build() - listener.sendGroupMessage(message.groupId, msg) + commands.sortedBy { it::class.simpleName }.forEach { + val description = + if (!it.javaClass.isAnnotationPresent(CommandDescription::class.java)) { + "暂无描述" + } else { + it.javaClass.getAnnotation(CommandDescription::class.java)?.description!! + } + val commandName = it::class.simpleName?.replace("Command", "")!! + val commandNames = it.commandNames.joinToString(",") + msg.addText("[$commandName] [$description] 命令: $commandNames") + .addNewLine() + } + message.reply(msg.build()) } } \ No newline at end of file diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/StatusCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/StatusCommand.kt index 39b06a7..e678284 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/StatusCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/StatusCommand.kt @@ -8,12 +8,14 @@ package cn.rtast.fancybot.commands import cn.rtast.fancybot.START_UP_TIME +import cn.rtast.fancybot.annotations.CommandDescription 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.OneBotListener import java.time.Instant +@CommandDescription("状态") class StatusCommand : BaseCommand() { override val commandNames = listOf("/status") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/AICommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/AICommand.kt index 6bb26e7..81d9fbb 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/AICommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/AICommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.configManager import cn.rtast.fancybot.entity.gpt.ChatCompletionsPayload import cn.rtast.fancybot.entity.gpt.ChatCompletionsResponse @@ -20,8 +21,9 @@ import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.NodeMessageChain import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("问AI(GPT)") class AICommand : BaseCommand() { - override val commandNames = listOf("/ai", "问AI") + override val commandNames = listOf("/ai") private val openAIModel = configManager.openAIModel @@ -71,6 +73,7 @@ class AICommand : BaseCommand() { } } +@CommandDescription("问AI(LLAMA)") class LlamaCommand : BaseCommand() { override val commandNames = listOf("/llama") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/CigaretteCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/CigaretteCommand.kt index 7a1b163..50fd226 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/CigaretteCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/CigaretteCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.cigarette.Cigarette import cn.rtast.fancybot.util.Http import cn.rtast.fancybot.util.str.encodeToBase64 @@ -17,8 +18,9 @@ import cn.rtast.rob.util.ob.NodeMessageChain import cn.rtast.rob.util.ob.OneBotListener import java.net.URI +@CommandDescription("查询香烟价格") class CigaretteCommand : BaseCommand() { - override val commandNames = listOf("/香烟", "/tobacco", "/cigarette") + override val commandNames = listOf("/tobacco") private val apiUrl = "https://www.yanyue.cn/api/rc/product/yanlist" diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DMSearchCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DMSearchCommand.kt index 59586a9..91e3019 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DMSearchCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DMSearchCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.bgm.BGMSearch import cn.rtast.fancybot.util.Http import cn.rtast.fancybot.util.str.encodeToBase64 @@ -18,8 +19,9 @@ import cn.rtast.rob.util.ob.OneBotListener import okhttp3.OkHttpClient import okhttp3.Request +@CommandDescription("搜索动漫") class DMSearchCommand : BaseCommand() { - override val commandNames = listOf("/dm", "动漫", "dm") + override val commandNames = listOf("/dm", "动漫") private val client = OkHttpClient() diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DomainPriceCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DomainPriceCommand.kt index 051ba88..a9abbcd 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DomainPriceCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/DomainPriceCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.domain.PricePayload import cn.rtast.fancybot.entity.domain.PriceResponse import cn.rtast.fancybot.util.Http @@ -21,6 +22,7 @@ import java.awt.Color import java.awt.Font import java.awt.image.BufferedImage +@CommandDescription("查询域名价格") class DomainPriceCommand : BaseCommand() { override val commandNames = listOf("/domain") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/GithubUserCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/GithubUserCommand.kt index a6b4fb6..b509b27 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/GithubUserCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/GithubUserCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.configManager import cn.rtast.fancybot.entity.github.UserInfo import cn.rtast.fancybot.util.Http @@ -24,8 +25,9 @@ import java.awt.Font import java.awt.image.BufferedImage import java.net.URI +@CommandDescription("获取Github用户信息") class GithubUserCommand : BaseCommand() { - override val commandNames = listOf("/gh", "/github", "gh") + override val commandNames = listOf("/gh") private val userInfoUrl = "https://api.github.com/users" private val backgroundColor = Color(255, 255, 240) diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MCPingCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MCPingCommand.kt index 22d6426..79b5bd4 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MCPingCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MCPingCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.motdpinger.BedrockPing import cn.rtast.motdpinger.JavaPing import cn.rtast.rob.entity.GroupMessage @@ -15,8 +16,9 @@ import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener import java.net.SocketException +@CommandDescription("PingMC服务器") class MCPingCommand : BaseCommand() { - override val commandNames = listOf("/mcping", "/mcPing") + override val commandNames = listOf("/mcping") override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List) { if (args.isEmpty()) { diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MusicCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MusicCommand.kt index 4b9caea..9000b0b 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MusicCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/MusicCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.configManager import cn.rtast.fancybot.entity.music.Search import cn.rtast.fancybot.entity.music.SearchedResult @@ -27,8 +28,9 @@ import java.io.FileNotFoundException import java.net.URI import java.time.Instant +@CommandDescription("网易云音乐点歌") class MusicCommand : BaseCommand() { - override val commandNames = listOf("/music", "/点歌", "点歌") + override val commandNames = listOf("点歌") private val searchedResult = mutableMapOf>() @@ -137,8 +139,9 @@ class MusicCommand : BaseCommand() { } } +@CommandDescription("获取网易云音乐链接") class MusicPlayUrlCommand : BaseCommand() { - override val commandNames = listOf("/lj", "lj", "song", "/song") + override val commandNames = listOf("lj") private fun getPlayUrl(id: String): String { return Http.get("${configManager.ncmAPI}/song/url", mapOf("id" to id)).data.first().url @@ -161,8 +164,9 @@ class MusicPlayUrlCommand : BaseCommand() { } } +@CommandDescription("QQ音乐点歌") class QQMusicCommand : BaseCommand() { - override val commandNames = listOf("qm", "/qqm", "qqm", "/qm", "q点歌") + override val commandNames = listOf("qm", "/qm") private val qqMusicApiUrl = configManager.qqMusicApiUrl diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/NslookupCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/NslookupCommand.kt index baa54ec..be5c2ac 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/NslookupCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/NslookupCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.MessageChain @@ -16,8 +17,9 @@ import kotlinx.coroutines.withContext import java.net.InetAddress import java.net.UnknownHostException +@CommandDescription("解析域名获取IP地址") class NslookupCommand : BaseCommand() { - override val commandNames = listOf("/nslookup", "/ns") + override val commandNames = listOf("/ns") override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List) { val host = args.joinToString(" ") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/PixivCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/PixivCommand.kt index 151b619..be21cfb 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/PixivCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/PixivCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.pixiv.Ranking import cn.rtast.fancybot.util.Http import cn.rtast.fancybot.util.str.encodeToBase64 @@ -16,8 +17,9 @@ import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener import java.net.URI +@CommandDescription("获取Pixiv上的图片") class PixivCommand : BaseCommand() { - override val commandNames = listOf("/pixiv", "/p") + override val commandNames = listOf("/p") private val pixivRankingURL = "https://proxy.rtast.cn/https/www.pixiv.net/ranking.php?format=json&mode=daily&p=1" private val imageProxyURL = "https://pixiv.re" diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/QRCodeCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/QRCodeCommand.kt index 2c619d3..be26a13 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/QRCodeCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/QRCodeCommand.kt @@ -7,13 +7,15 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription 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.OneBotListener +@CommandDescription("生成二维码") class QRCodeCommand : BaseCommand() { - override val commandNames = listOf("/qrcode", "/qr", "/二维码") + override val commandNames = listOf("/qr") override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List) { val content = args.joinToString(" ") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/ShotCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/ShotCommand.kt index bf228a4..3f2092c 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/ShotCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/ShotCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.enums.ArrayMessageType import cn.rtast.rob.util.BaseCommand @@ -24,6 +25,7 @@ private fun generateNodeMessage(targetId: String, times: Int = 10): NodeMessageC return nodeMsg.build() } +@CommandDescription("骂自己(好爽)") class ShotSelfCommand : BaseCommand() { override val commandNames = listOf("骂我") @@ -32,6 +34,7 @@ class ShotSelfCommand : BaseCommand() { } } +@CommandDescription("骂别人(更爽了") class ShotOtherCommand : BaseCommand() { override val commandNames = listOf("骂") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WeatherCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WeatherCommand.kt index ec1527c..d6cb608 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WeatherCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WeatherCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.configManager import cn.rtast.fancybot.entity.weather.Geo import cn.rtast.fancybot.entity.weather.Weather @@ -25,8 +26,9 @@ import java.awt.Color import java.awt.Font import java.awt.image.BufferedImage +@CommandDescription("查询天气") class WeatherCommand : BaseCommand() { - override val commandNames = listOf("/weather", "/天气", "天气") + override val commandNames = listOf("天气") private val canvasWidth = 800 private val canvasHeight = 600 diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WikipediaCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WikipediaCommand.kt index bbd1720..ea7543f 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WikipediaCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/lookup/WikipediaCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.lookup +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.wiki.PageInfoResponse import cn.rtast.fancybot.entity.wiki.WikipediaResponse import cn.rtast.fancybot.util.Http @@ -16,6 +17,7 @@ import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener import org.jsoup.Jsoup +@CommandDescription("查询wiki百科") class WikipediaCommand : BaseCommand() { override val commandNames = listOf("/wiki", "/wk") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/AntiRevokeCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/AntiRevokeCommand.kt index 56332e0..cc3aff9 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/AntiRevokeCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/AntiRevokeCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.configManager import cn.rtast.rob.entity.ArrayMessage import cn.rtast.rob.entity.GroupMessage @@ -14,6 +15,7 @@ import cn.rtast.rob.enums.ArrayMessageType import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("防撤回(获取消息)") class AntiRevokeCommand : BaseCommand() { override val commandNames = listOf("/revoke", "/rv", "/防撤回") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/CompilerCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/CompilerCommand.kt index d249216..fd34c6c 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/CompilerCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/CompilerCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.compiler.GLOTPayload import cn.rtast.fancybot.entity.compiler.GLOTResponse import cn.rtast.fancybot.entity.compiler.KCSPayload @@ -18,6 +19,7 @@ import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("执行不同语言的代码片段") class CompilerCommand : BaseCommand() { override val commandNames = listOf("/compiler", "/exec") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/FKXQSCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/FKXQSCommand.kt index 9fc908d..63c6aa0 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/FKXQSCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/FKXQSCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.FKXQS import cn.rtast.fancybot.util.Http import cn.rtast.rob.entity.GroupMessage @@ -14,6 +15,7 @@ import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("今天是疯狂星期四!") class FKXQSCommand : BaseCommand() { override val commandNames = listOf("/fkxqs", "/fk", "/疯狂星期四") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/HitokotoCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/HitokotoCommand.kt index ef11e30..ef5bb7a 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/HitokotoCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/HitokotoCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.Hitokoto import cn.rtast.fancybot.util.Http import cn.rtast.rob.entity.GroupMessage @@ -14,8 +15,9 @@ import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("一言") class HitokotoCommand : BaseCommand() { - override val commandNames = listOf("/hitokoto", "/1", "一言", "1") + override val commandNames = listOf("/1") override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List) { val response = Http.get("https://v1.hitokoto.cn/?c=b") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/record/JrrpCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/JrrpCommand.kt similarity index 91% rename from src/main/kotlin/cn/rtast/fancybot/commands/record/JrrpCommand.kt rename to src/main/kotlin/cn/rtast/fancybot/commands/misc/JrrpCommand.kt index 24c47f6..693f710 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/record/JrrpCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/JrrpCommand.kt @@ -5,14 +5,16 @@ */ -package cn.rtast.fancybot.commands.record +package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription 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.OneBotListener +@CommandDescription("今日人品~") class JrrpCommand : BaseCommand() { override val commandNames = listOf("/jrrp", "/今日人品") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/JueCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/JueCommand.kt index 151b9c8..b14ed8c 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/JueCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/JueCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.util.Resources import cn.rtast.fancybot.util.drawCircularImage import cn.rtast.fancybot.util.makeGif @@ -21,6 +22,7 @@ import com.madgag.gif.fmsware.GifDecoder import java.awt.image.BufferedImage import java.net.URI +@CommandDescription("撅撅你") class JueCommand : BaseCommand() { override val commandNames = listOf("撅") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/LikeMeCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/LikeMeCommand.kt index bc60900..ee0d7be 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/LikeMeCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/LikeMeCommand.kt @@ -7,11 +7,13 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription 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.OneBotListener +@CommandDescription("资料卡点赞") class LikeMeCommand : BaseCommand() { override val commandNames = listOf("赞我") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/RUACommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/RUACommand.kt index e836c3d..80430c8 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/RUACommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/RUACommand.kt @@ -7,12 +7,14 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription 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.OneBotListener +@CommandDescription("RUA!") class RUACommand : BaseCommand() { override val commandNames = listOf("/rua", "rua") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/RemakeCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/RemakeCommand.kt index 7f07e6e..142f30d 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/RemakeCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/RemakeCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.enums.CountryList import cn.rtast.fancybot.util.randomBooleanWithProbability import cn.rtast.rob.entity.GroupMessage @@ -14,8 +15,9 @@ import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("人生重开模拟器") class RemakeCommand : BaseCommand() { - override val commandNames = listOf("/remake", "/重开", "remake", "重开") + override val commandNames = listOf("remake") private val locations = listOf( "厕所", "首都", "农村", "市区", diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/SendMailCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/SendMailCommand.kt index 57ac2cd..fa5be65 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/SendMailCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/SendMailCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.configManager import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.util.BaseCommand @@ -16,6 +17,7 @@ import org.simplejavamail.api.mailer.config.TransportStrategy import org.simplejavamail.email.EmailBuilder import org.simplejavamail.mailer.MailerBuilder +@CommandDescription("发送邮件!") class SendMailCommand : BaseCommand() { override val commandNames = listOf("/mail") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/record/ShortLinkCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/ShortLinkCommand.kt similarity index 88% rename from src/main/kotlin/cn/rtast/fancybot/commands/record/ShortLinkCommand.kt rename to src/main/kotlin/cn/rtast/fancybot/commands/misc/ShortLinkCommand.kt index aac93d5..f70204f 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/record/ShortLinkCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/ShortLinkCommand.kt @@ -5,8 +5,9 @@ */ -package cn.rtast.fancybot.commands.record +package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.ShortLink import cn.rtast.fancybot.util.Http import cn.rtast.fancybot.util.str.encodeToBase64 @@ -14,6 +15,7 @@ import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("生成短链接") class ShortLinkCommand : BaseCommand() { override val commandNames = listOf("/s", "/sl", "/shortlink", "/short") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/TenSetuCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/TenSetuCommand.kt index 05c409b..e64304e 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/TenSetuCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/TenSetuCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.entity.Setu import cn.rtast.fancybot.util.Http import cn.rtast.fancybot.util.str.encodeToBase64 @@ -18,6 +19,7 @@ import cn.rtast.rob.util.ob.NodeMessageChain import cn.rtast.rob.util.ob.OneBotListener import java.net.URI +@CommandDescription("老板你好, 给我来十张色图") class TenSetuCommand : BaseCommand() { override val commandNames = listOf("十张色图") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/misc/ZiBiCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/misc/ZiBiCommand.kt index e5cf6ab..65fb141 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/misc/ZiBiCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/misc/ZiBiCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.misc +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.entity.PrivateMessage import cn.rtast.rob.util.BaseCommand @@ -15,6 +16,7 @@ import cn.rtast.rob.util.ob.OneBotListener val users = mutableMapOf() +@CommandDescription("自闭去吧你") class ZiBiCommand : BaseCommand() { override val commandNames = listOf("/自闭", "自闭") @@ -40,6 +42,7 @@ class ZiBiCommand : BaseCommand() { } } +@CommandDescription("我好像突然想开了") class UnsetZiBiCommand : BaseCommand() { override val commandNames = listOf("我想开了") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/MyNiuziCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/MyNiuziCommand.kt index 296d08f..e0265b4 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/MyNiuziCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/MyNiuziCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.niuzi +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.niuziManager import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.util.BaseCommand @@ -14,6 +15,7 @@ import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("查询自己牛子的长度") class MyNiuziCommand : BaseCommand() { override val commandNames = listOf("我的牛子", "/mp", "mp") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziBankCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziBankCommand.kt index 639949d..fdb37cb 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziBankCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziBankCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.niuzi +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.niuziBankManager import cn.rtast.fancybot.niuziManager import cn.rtast.rob.entity.GroupMessage @@ -21,6 +22,7 @@ private suspend fun noAccount(message: GroupMessage) { private const val INTEREST_RATE = 0.54 +@CommandDescription("牛子银行根命令") class NiuziBankCommand : BaseCommand() { override val commandNames = listOf("牛子银行", "/银行") @@ -34,6 +36,7 @@ class NiuziBankCommand : BaseCommand() { } } +@CommandDescription("查询牛子银行的余额") class BankBalanceCommand : BaseCommand() { override val commandNames = listOf("余额查询") @@ -47,6 +50,7 @@ class BankBalanceCommand : BaseCommand() { } } +@CommandDescription("创建一个空的牛子银行账户") class CreateBankAccountCommand : BaseCommand() { override val commandNames = listOf("创建账户") @@ -60,6 +64,7 @@ class CreateBankAccountCommand : BaseCommand() { } } +@CommandDescription("用于牛子银行之间转账") class BankTransferCommand : BaseCommand() { override val commandNames = listOf("银行转账") @@ -84,6 +89,7 @@ class BankTransferCommand : BaseCommand() { } } +@CommandDescription("牛子银行提现") class WithdrawCommand : BaseCommand() { override val commandNames = listOf("取牛子") @@ -113,6 +119,7 @@ class WithdrawCommand : BaseCommand() { } } +@CommandDescription("牛子银行存入") class DepositCommand : BaseCommand() { override val commandNames = listOf("存牛子") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziJiJianCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziJiJianCommand.kt index f79cead..e7e6085 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziJiJianCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziJiJianCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.niuzi +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.niuziManager import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.enums.ArrayMessageType @@ -14,6 +15,7 @@ import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("来一起激情击剑吧!") class NiuziJiJianCommand : BaseCommand() { override val commandNames = listOf("击剑", "jj") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziQueryCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziQueryCommand.kt index 4cff31f..cdeb443 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziQueryCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziQueryCommand.kt @@ -7,12 +7,14 @@ package cn.rtast.fancybot.commands.niuzi +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.niuziManager import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.enums.ArrayMessageType import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("查询别人的牛子长度") class NiuziQueryCommand : BaseCommand() { override val commandNames = listOf("牛子查询", "nq") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/record/RedeemCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziRedeemCommand.kt similarity index 94% rename from src/main/kotlin/cn/rtast/fancybot/commands/record/RedeemCommand.kt rename to src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziRedeemCommand.kt index 0b75bcb..c6d9566 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/record/RedeemCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziRedeemCommand.kt @@ -5,8 +5,9 @@ */ -package cn.rtast.fancybot.commands.record +package cn.rtast.fancybot.commands.niuzi +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.itemManager import cn.rtast.fancybot.niuziManager import cn.rtast.rob.entity.GroupMessage @@ -14,7 +15,8 @@ import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener -class RedeemCommand : BaseCommand() { +@CommandDescription("使用牛子长度兑换物品") +class NiuziRedeemCommand : BaseCommand() { override val commandNames = listOf("/redeem", "/兑换", "/rdm") override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List) { diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziSignCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziSignCommand.kt index b56034d..ede0033 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziSignCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziSignCommand.kt @@ -7,12 +7,14 @@ package cn.rtast.fancybot.commands.niuzi +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.niuziManager 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.OneBotListener +@CommandDescription("牛子签到~") class NiuziSignCommand : BaseCommand() { override val commandNames = listOf("牛子签到", "签到") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziTransferCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziTransferCommand.kt index 6975c58..a4f8902 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziTransferCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/niuzi/NiuziTransferCommand.kt @@ -7,12 +7,14 @@ package cn.rtast.fancybot.commands.niuzi +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.niuziManager import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.enums.ArrayMessageType import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.ob.OneBotListener +@CommandDescription("将自己的牛子长度转账给别人") class NiuziTransferCommand : BaseCommand() { override val commandNames = listOf("牛子转账", "转账", "/zz") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/parse/AsciiArtCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/parse/AsciiArtCommand.kt index 6df591c..7651c43 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/parse/AsciiArtCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/parse/AsciiArtCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.parse +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.util.str.encodeToBase64 import cn.rtast.fancybot.util.toByteArray import cn.rtast.rob.entity.GroupMessage @@ -23,6 +24,7 @@ import java.net.URI import javax.imageio.ImageIO import kotlin.math.roundToInt +@CommandDescription("将图片转换成ASCII字符画!") class AsciiArtCommand : BaseCommand() { override val commandNames = listOf("/ascii", "/asc") diff --git a/src/main/kotlin/cn/rtast/fancybot/commands/parse/ReverseGIFCommand.kt b/src/main/kotlin/cn/rtast/fancybot/commands/parse/ReverseGIFCommand.kt index c4e5daf..916334c 100644 --- a/src/main/kotlin/cn/rtast/fancybot/commands/parse/ReverseGIFCommand.kt +++ b/src/main/kotlin/cn/rtast/fancybot/commands/parse/ReverseGIFCommand.kt @@ -7,6 +7,7 @@ package cn.rtast.fancybot.commands.parse +import cn.rtast.fancybot.annotations.CommandDescription import cn.rtast.fancybot.util.makeGif import cn.rtast.fancybot.util.str.encodeToBase64 import cn.rtast.rob.entity.GroupMessage @@ -17,6 +18,7 @@ import cn.rtast.rob.util.ob.OneBotListener import com.madgag.gif.fmsware.GifDecoder import java.net.URI +@CommandDescription("倒放GIF") class ReverseGIFCommand : BaseCommand() { override val commandNames = listOf("倒放")