添加setu.js备用接口
This commit is contained in:
21
apps/setu.js
21
apps/setu.js
@@ -84,9 +84,9 @@ export class sese extends plugin {
|
||||
|
||||
let r18 = await setu.getr18(e)
|
||||
|
||||
let res = await setu.setuapi(r18, num)
|
||||
let res = await setu.setuapi(e, r18, num)
|
||||
|
||||
if (!res) return e.reply("接口失效")
|
||||
if (!res) return false
|
||||
|
||||
setu.sendMsg(e, res)
|
||||
}
|
||||
@@ -101,14 +101,14 @@ export class sese extends plugin {
|
||||
|
||||
if (cds) return e.reply(` ${lodash.sample(CDMsg)}你的CD还有${cds}`, false, { at: true })
|
||||
|
||||
let msg = e.msg.replace(/#|椰奶tag/g, "").trim()
|
||||
let tag = e.msg.replace(/#|椰奶tag/g, "").trim()
|
||||
|
||||
let num = e.msg.match(new RegExp(`(${Numreg})张`))
|
||||
|
||||
if (!num) {
|
||||
num = 1
|
||||
} else {
|
||||
msg = msg.replace(num[0], "").trim()
|
||||
tag = tag.replace(num[0], "").trim()
|
||||
num = common.translateChinaNum(num[1])
|
||||
}
|
||||
|
||||
@@ -120,21 +120,20 @@ export class sese extends plugin {
|
||||
e.reply(lodash.sample(startMsg))
|
||||
}
|
||||
|
||||
if (!msg) return e.reply("tag为空!!!", false, { at: true })
|
||||
if (!tag) return e.reply("tag为空!!!", false, { at: true })
|
||||
|
||||
msg = msg.split(" ")
|
||||
tag = tag.split(" ")
|
||||
|
||||
if (msg.length > 3) return e.reply("tag最多只能指定三个哦~", false, { at: true })
|
||||
if (tag.length > 3) return e.reply("tag最多只能指定三个哦~", false, { at: true })
|
||||
|
||||
msg = msg.map((item) => `&tag=${item}`).join("")
|
||||
tag = tag.map((item) => `&tag=${item}`).join("")
|
||||
|
||||
let r18 = await setu.getr18(e)
|
||||
//接口
|
||||
let res = await setu.setuapi(r18, num, msg)
|
||||
let res = await setu.setuapi(e, r18, num, tag)
|
||||
|
||||
if (!res) return e.reply("❎ 接口失效")
|
||||
if (!res) return false;
|
||||
|
||||
if (res.length == 0) return e.reply("没有找到相关的tag", false, { at: true })
|
||||
//发送消息
|
||||
setu.sendMsg(e, res)
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ export default new class setu {
|
||||
* @param {String} tag 关键词
|
||||
* @return {Object}
|
||||
*/
|
||||
async setuapi(r18, num = 1, tag = "") {
|
||||
async setuapi(e, r18, num = 1, tag = "") {
|
||||
let api = "https://api.lolicon.app/setu/v2";
|
||||
if (fs.existsSync(this.apicfg)) {
|
||||
let apicfg = await Cfg.getread(this.apicfg)
|
||||
@@ -81,8 +81,33 @@ export default new class setu {
|
||||
}
|
||||
let url = `${api}?r18=${r18}&num=${num}${tag}&proxy=${proxy}&size=${size}`;
|
||||
let result = await fetch(url).then(res => res.json()).catch(err => console.log(err))
|
||||
if (!result) return false;
|
||||
return result.data
|
||||
if (!result) {
|
||||
logger.mark("[椰奶setu]启用备用接口")
|
||||
let apiReserve = `https://sex.nyan.xyz/api/v2/?r18=${r18}&num=${num}${tag}`;
|
||||
result = await fetch(apiReserve).then(res => res.json()).catch(err => console.log(err))
|
||||
if (!result) {
|
||||
e.reply("❎ 接口失效")
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if (lodash.isEmpty(result.data)) {
|
||||
e.reply("没有找到相关的tag", false, { at: true })
|
||||
return false;
|
||||
}
|
||||
//消息
|
||||
let msg = result.data.map(item => {
|
||||
let { pid, title, tags, author, r18, urls, url } = item
|
||||
return [
|
||||
`${lodash.sample(sendMsgs)}\n`,
|
||||
`标题:${title}\n`,
|
||||
`画师:${author}\n`,
|
||||
`pid:${pid}\n`,
|
||||
r18 ? `r18:${r18}\n` : "",
|
||||
`tag:${lodash.truncate(tags.join(","))}\n`,
|
||||
segment.image(url || urls?.original || urls?.regular || urls?.small),
|
||||
]
|
||||
})
|
||||
return msg
|
||||
}
|
||||
|
||||
|
||||
@@ -92,30 +117,14 @@ export default new class setu {
|
||||
* @param {Array} img 消息数组
|
||||
* @return {Boolean}
|
||||
*/
|
||||
async sendMsg(e, img) {
|
||||
//风控消息
|
||||
let isfk = `呃....被风控了,感觉不太妙呢~给你个链接冲吧~\nhttps://pixiv.re/${img[0].pid}.jpg`
|
||||
async sendMsg(e, msg) {
|
||||
//默认CD
|
||||
let cd = this.def.cd
|
||||
//获取当前时间
|
||||
let present = parseInt(new Date().getTime() / 1000)
|
||||
//消息
|
||||
let msg = [];
|
||||
for (let i of img) {
|
||||
let { pid, title, tags, author, r18, urls } = i
|
||||
msg.push([
|
||||
`${lodash.sample(sendMsgs)}\n`,
|
||||
`标题:${title}\n`,
|
||||
`画师:${author}\n`,
|
||||
`pid:${pid}\n`,
|
||||
`r18:${r18}\n`,
|
||||
`tag:${lodash.truncate(tags.join(","))}\n`,
|
||||
segment.image(urls.original || urls.regular || urls.small),
|
||||
])
|
||||
}
|
||||
//发送消息
|
||||
let res = Cfg.getCDsendMsg(e, msg, false, false)
|
||||
|
||||
//发送消息
|
||||
let res = await Cfg.getCDsendMsg(e, msg, false)
|
||||
if (e.isGroup) {
|
||||
let groupCD = {};
|
||||
//获取CD
|
||||
@@ -123,38 +132,28 @@ export default new class setu {
|
||||
groupCD = await Cfg.getread(this.path)
|
||||
if (groupCD[e.group_id]) cd = groupCD[e.group_id].cd
|
||||
}
|
||||
|
||||
if (res) {
|
||||
if (!e.isMaster) {
|
||||
if (cd != 0) {
|
||||
this.temp[e.user_id + e.group_id] = present + cd
|
||||
setTimeout(() => {
|
||||
delete this.temp[e.user_id + e.group_id];
|
||||
}, cd * 1000);
|
||||
}
|
||||
if (!e.isMaster && res) {
|
||||
if (cd != 0) {
|
||||
this.temp[e.user_id + e.group_id] = present + cd
|
||||
setTimeout(() => {
|
||||
delete this.temp[e.user_id + e.group_id];
|
||||
}, cd * 1000);
|
||||
}
|
||||
} else {
|
||||
e.reply(isfk)
|
||||
logger.error("[椰奶]Bot被风控,发送被风控消息")
|
||||
}
|
||||
|
||||
} else {
|
||||
//私聊
|
||||
if (fs.existsSync(this.path_s)) {
|
||||
let friendCD = await Cfg.getread(this.path_s)
|
||||
if (friendCD[e.user_id]) cd = friendCD[e.user_id]
|
||||
}
|
||||
if (res) {
|
||||
if (!e.isMaster) {
|
||||
if (cd != 0) {
|
||||
this.temp[e.user_id] = present + cd
|
||||
setTimeout(() => {
|
||||
delete this.temp[e.user_id];
|
||||
}, cd * 1000);
|
||||
}
|
||||
if (!e.isMaster && res) {
|
||||
if (cd != 0) {
|
||||
this.temp[e.user_id] = present + cd
|
||||
setTimeout(() => {
|
||||
delete this.temp[e.user_id];
|
||||
}, cd * 1000);
|
||||
}
|
||||
} else {
|
||||
e.reply(isfk)
|
||||
logger.error("[椰奶]Bot被风控,发送被风控消息")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user