chore: move ten setu to redeem list

This commit is contained in:
2024-09-28 20:53:49 +08:00
parent 042cef3340
commit e2b6ffff38
5 files changed
+25 -23

No files matched your search

+5 -7
View File
@@ -22,10 +22,7 @@ import cn.rtast.fancybot.commands.misc.ShortLinkCommand
import cn.rtast.fancybot.entity.Config import cn.rtast.fancybot.entity.Config
import cn.rtast.fancybot.entity.enums.ImageType import cn.rtast.fancybot.entity.enums.ImageType
import cn.rtast.fancybot.entity.enums.WSType import cn.rtast.fancybot.entity.enums.WSType
import cn.rtast.fancybot.items.BaisiItem import cn.rtast.fancybot.items.*
import cn.rtast.fancybot.items.HeisiItem
import cn.rtast.fancybot.items.NiuziItem
import cn.rtast.fancybot.items.SetuItem
import cn.rtast.fancybot.util.file.ConfigManager import cn.rtast.fancybot.util.file.ConfigManager
import cn.rtast.fancybot.util.file.NiuziBankManager import cn.rtast.fancybot.util.file.NiuziBankManager
import cn.rtast.fancybot.util.file.NiuziManager import cn.rtast.fancybot.util.file.NiuziManager
@@ -77,7 +74,8 @@ val START_UP_TIME = Instant.now().epochSecond
val items = listOf( val items = listOf(
HeisiItem(), BaisiItem(), HeisiItem(), BaisiItem(),
SetuItem(), NiuziItem() SetuItem(), NiuziItem(),
TenSetuItem()
) )
val commands = listOf( val commands = listOf(
@@ -95,7 +93,6 @@ val commands = listOf(
UnsetZiBiCommand(), WikipediaCommand(), UnsetZiBiCommand(), WikipediaCommand(),
AsciiArtCommand(), StatusCommand(), AsciiArtCommand(), StatusCommand(),
JueCommand(), ShortLinkCommand(), JueCommand(), ShortLinkCommand(),
TenSetuCommand(), ShotSelfCommand(),
ShotOtherCommand(), ReverseGIFCommand(), ShotOtherCommand(), ReverseGIFCommand(),
HelpCommand(), MusicCommand(), HelpCommand(), MusicCommand(),
LikeMeCommand(), NiuziTransferCommand(), LikeMeCommand(), NiuziTransferCommand(),
@@ -106,5 +103,6 @@ val commands = listOf(
BankBalanceCommand(), DepositCommand(), BankBalanceCommand(), DepositCommand(),
DMSearchCommand(), LlamaCommand(), DMSearchCommand(), LlamaCommand(),
QQMusicCommand(), BullShitGenerateCommand(), QQMusicCommand(), BullShitGenerateCommand(),
NiuziRankCommand(), NiuziBankRankCommand() NiuziRankCommand(), NiuziBankRankCommand(),
ShotSelfCommand()
) )
@@ -16,7 +16,7 @@ import cn.rtast.rob.util.ob.OneBotListener
class BaisiItem : Item() { class BaisiItem : Item() {
override val itemNames = listOf("baisi", "白丝", "bs") override val itemNames = listOf("baisi", "白丝", "bs")
override val itemPrice = 5.0 override val itemPrice = 3.0
override suspend fun redeemInGroup( override suspend fun redeemInGroup(
listener: OneBotListener, listener: OneBotListener,
@@ -16,7 +16,7 @@ import cn.rtast.rob.util.ob.OneBotListener
class HeisiItem : Item() { class HeisiItem : Item() {
override val itemNames = listOf("heisi", "黑丝", "hs") override val itemNames = listOf("heisi", "黑丝", "hs")
override val itemPrice = 5.0 override val itemPrice = 3.0
override suspend fun redeemInGroup( override suspend fun redeemInGroup(
listener: OneBotListener, listener: OneBotListener,
@@ -20,7 +20,7 @@ import java.net.URI
class SetuItem : Item() { class SetuItem : Item() {
override val itemNames = listOf("setu", "色图", "st") override val itemNames = listOf("setu", "色图", "st")
override val itemPrice = 10.0 override val itemPrice = 4.0
override suspend fun redeemInGroup( override suspend fun redeemInGroup(
listener: OneBotListener, listener: OneBotListener,
@@ -1,37 +1,40 @@
/* /*
* Copyright © 2024 RTAkland * Copyright © 2024 RTAkland
* Author: RTAkland * Author: RTAkland
* Date: 2024/9/23 * Date: 2024/9/28
*/ */
package cn.rtast.fancybot.commands.misc package cn.rtast.fancybot.items
import cn.rtast.fancybot.annotations.CommandDescription
import cn.rtast.fancybot.configManager import cn.rtast.fancybot.configManager
import cn.rtast.fancybot.entity.Setu import cn.rtast.fancybot.entity.Setu
import cn.rtast.fancybot.util.Http import cn.rtast.fancybot.util.Http
import cn.rtast.fancybot.util.item.Item
import cn.rtast.fancybot.util.str.encodeToBase64 import cn.rtast.fancybot.util.str.encodeToBase64
import cn.rtast.fancybot.util.str.fromArrayJson import cn.rtast.fancybot.util.str.fromArrayJson
import cn.rtast.rob.entity.GroupMessage 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.MessageChain
import cn.rtast.rob.util.ob.NodeMessageChain
import cn.rtast.rob.util.ob.OneBotListener import cn.rtast.rob.util.ob.OneBotListener
import cn.rtast.rob.util.ob.asNode
import java.net.URI import java.net.URI
@CommandDescription("老板你好, 给我来十张色图") class TenSetuItem : Item() {
class TenSetuCommand : BaseCommand() { override val itemNames = listOf("十张色图")
override val commandNames = listOf("十张色图") override val itemPrice = 20.0
override suspend fun executeGroup(listener: OneBotListener, message: GroupMessage, args: List<String>) { override suspend fun redeemInGroup(
val nodeMsg = NodeMessageChain.Builder() listener: OneBotListener,
message: GroupMessage,
after: Double
): MessageChain.Builder {
val imageMessages = mutableListOf<MessageChain>()
val response = Http.get("https://api.rtast.cn/api/setu?size=10").fromArrayJson<List<Setu>>() val response = Http.get("https://api.rtast.cn/api/setu?size=10").fromArrayJson<List<Setu>>()
response.filter { !it.r18 }.map { it.urls.large }.forEach { response.filter { !it.r18 }.map { it.urls.large }.forEach {
try { try {
val imageBase64 = URI(it).toURL().readBytes().encodeToBase64() val imageBase64 = URI(it).toURL().readBytes().encodeToBase64()
val tempMsg = MessageChain.Builder().addImage(imageBase64, true).build() val tempMsg = MessageChain.Builder().addImage(imageBase64, true).build()
nodeMsg.addMessageChain(tempMsg, configManager.selfId) imageMessages.add(tempMsg)
} catch (_: Exception) { } catch (_: Exception) {
} }
} }
@@ -40,7 +43,8 @@ class TenSetuCommand : BaseCommand() {
.addNewLine() .addNewLine()
.addText("因为过滤了R18的图片~") .addText("因为过滤了R18的图片~")
.build() .build()
nodeMsg.addMessageChain(footerMsg, configManager.selfId) imageMessages.add(footerMsg)
listener.sendGroupForwardMsg(message.groupId, nodeMsg.build()) message.reply(imageMessages.asNode(configManager.selfId))
return MessageChain.Builder()
} }
} }