feat: add annotation to add command description

This commit is contained in:
2024-09-26 05:20:10 +08:00
parent 0a28d05bfe
commit 8dc311fb90
41 files changed
+135 -33

No files matched your search

+4 -4
View File
@@ -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(),
@@ -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)
@@ -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", "/关于")
@@ -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")
@@ -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<String>) {
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)
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()
.addText(allCommands)
.build()
listener.sendGroupMessage(message.groupId, msg)
}
message.reply(msg.build())
}
}
@@ -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")
@@ -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")
@@ -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"
@@ -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()
@@ -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")
@@ -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)
@@ -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<String>) {
if (args.isEmpty()) {
@@ -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<Long, List<SearchedResult>>()
@@ -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<SongUrl>("${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
@@ -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<String>) {
val host = args.joinToString(" ")
@@ -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"
@@ -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<String>) {
val content = args.joinToString(" ")
@@ -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("")
@@ -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
@@ -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")
@@ -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", "/防撤回")
@@ -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")
@@ -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", "/疯狂星期四")
@@ -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<String>) {
val response = Http.get<Hitokoto>("https://v1.hitokoto.cn/?c=b")
@@ -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", "/今日人品")
@@ -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("")
@@ -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("赞我")
@@ -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")
@@ -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(
"厕所", "首都", "农村", "市区",
@@ -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")
@@ -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")
@@ -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("十张色图")
@@ -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<Long, Long>()
@CommandDescription("自闭去吧你")
class ZiBiCommand : BaseCommand() {
override val commandNames = listOf("/自闭", "自闭")
@@ -40,6 +42,7 @@ class ZiBiCommand : BaseCommand() {
}
}
@CommandDescription("我好像突然想开了")
class UnsetZiBiCommand : BaseCommand() {
override val commandNames = listOf("我想开了")
@@ -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")
@@ -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("存牛子")
@@ -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")
@@ -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")
@@ -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<String>) {
@@ -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("牛子签到", "签到")
@@ -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")
@@ -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")
@@ -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("倒放")