add sj command

This commit is contained in:
2025-01-15 16:21:24 +08:00
parent a6b8698a68
commit d406e74659
4 files changed
+31 -1

No files matched your search

+1 -1
View File
@@ -112,5 +112,5 @@ val commands = listOf(
TodayEatCommand(), TodayDrinkCommand(), MCLoginCommand(), RCONCommand(), TodayEatCommand(), TodayDrinkCommand(), MCLoginCommand(), RCONCommand(),
GravatarCommand(), PastebinCommand(), ShuffleEchoCommand(), TodayDontEatCommand(), GravatarCommand(), PastebinCommand(), ShuffleEchoCommand(), TodayDontEatCommand(),
TodayDontDrinkCommand(), MCBotCommand(), HTTPCatCommand(), HTTPDogCommand(), TodayDontDrinkCommand(), MCBotCommand(), HTTPCatCommand(), HTTPDogCommand(),
AITTSCommand(), NWWNCommand(), TJBGXLCommand(), XNMCommand() AITTSCommand(), NWWNCommand(), TJBGXLCommand(), XNMCommand(), SJCommand()
) )
@@ -17,6 +17,7 @@ import cn.rtast.rob.segment.Image
import cn.rtast.rob.util.BaseCommand import cn.rtast.rob.util.BaseCommand
import java.awt.Color import java.awt.Color
import java.awt.Font import java.awt.Font
import java.awt.RenderingHints
import javax.imageio.ImageIO import javax.imageio.ImageIO
@CommandDescription("那我问你") @CommandDescription("那我问你")
@@ -30,6 +31,7 @@ class NWWNCommand : BaseCommand() {
val keyword = args.joinToString(" ") val keyword = args.joinToString(" ")
val img = ImageIO.read(originNWWNImage!!.inputStream()) val img = ImageIO.read(originNWWNImage!!.inputStream())
val g2d = img.createGraphics() val g2d = img.createGraphics()
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON)
g2d.color = Color.BLACK g2d.color = Color.BLACK
g2d.font = font g2d.font = font
g2d.drawString(keyword, 290, 70) g2d.drawString(keyword, 290, 70)
@@ -55,6 +57,7 @@ class TJBGXLCommand: BaseCommand() {
val keyword = args.joinToString(" ") val keyword = args.joinToString(" ")
val img = ImageIO.read(originImage!!.inputStream()) val img = ImageIO.read(originImage!!.inputStream())
val g2d = img.createGraphics() val g2d = img.createGraphics()
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON)
g2d.color = Color.BLACK g2d.color = Color.BLACK
g2d.font = font g2d.font = font
g2d.drawCenteredText(keyword, 380, 620) g2d.drawCenteredText(keyword, 380, 620)
@@ -81,6 +84,7 @@ class XNMCommand: BaseCommand() {
val keyword2 = args.last() val keyword2 = args.last()
val img = ImageIO.read(originImage!!.inputStream()) val img = ImageIO.read(originImage!!.inputStream())
val g2d = img.createGraphics() val g2d = img.createGraphics()
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON)
g2d.color = Color.BLACK g2d.color = Color.BLACK
g2d.font = font g2d.font = font
g2d.drawCenteredText(keyword, 510, 55) g2d.drawCenteredText(keyword, 510, 55)
@@ -94,3 +98,28 @@ class XNMCommand: BaseCommand() {
} }
} }
} }
class SJCommand: BaseCommand() {
override val commandNames = listOf("sj")
private val font = Font("SimSun", Font.BOLD, 20)
private val originImage = Resources.loadFromResourcesAsBytes("misc/sj.png")
override suspend fun executeGroup(message: GroupMessage, args: List<String>) {
try {
val keyword = args.joinToString(" ")
val img = ImageIO.read(originImage!!.inputStream())
val g2d = img.createGraphics()
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON)
g2d.color = Color.BLACK
g2d.font = font
g2d.drawCenteredText(keyword, 126, 230)
g2d.dispose()
val imgBase64 = img.toByteArray().encodeToBase64()
val msg = Image(imgBase64, true)
message.reply(msg)
} catch (e: Exception) {
message.reply("生成失败: ${e.message}")
}
}
}
@@ -8,6 +8,7 @@
package cn.rtast.fancybot.util.misc package cn.rtast.fancybot.util.misc
import java.io.InputStream import java.io.InputStream
import kotlin.jvm.javaClass
object Resources { object Resources {
fun loadFromResources(filename: String): InputStream? { fun loadFromResources(filename: String): InputStream? {
Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB