diff --git a/src/main/kotlin/cn/rtast/fancybot/items/SetuItem.kt b/src/main/kotlin/cn/rtast/fancybot/items/SetuItem.kt index 3501fd6..141ead2 100644 --- a/src/main/kotlin/cn/rtast/fancybot/items/SetuItem.kt +++ b/src/main/kotlin/cn/rtast/fancybot/items/SetuItem.kt @@ -8,23 +8,32 @@ package cn.rtast.fancybot.items import cn.rtast.fancybot.entity.Setu +import cn.rtast.fancybot.niuziManager 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.fromArrayJson import cn.rtast.rob.entity.GroupMessage import cn.rtast.rob.util.ob.MessageChain import cn.rtast.rob.util.ob.OneBotListener +import java.net.URI class SetuItem : Item() { override val itemNames = listOf("setu", "色图", "st") override val itemPrice = 10.0 override suspend fun redeemInGroup(listener: OneBotListener, message: GroupMessage, after: Double) { - val url = Http.get("https://api.rtast.cn/api/setu") - .fromArrayJson>().first().urls.large + val response = Http.get("https://api.rtast.cn/api/setu") + .fromArrayJson>().first() + if (response.r18) { + niuziManager.updateLength(message.sender.userId, itemPrice) + message.reply("不好意思这张图片是R18所以不能发~, 牛子长度已经退还~") + return + } + val imageBase64 = URI(response.urls.large).toURL().readBytes().encodeToBase64() val msg = MessageChain.Builder() .addAt(message.sender.userId) - .addImage(url) + .addImage(imageBase64, true) .build() listener.sendGroupMessage(message.groupId, msg) }