Skip to content

Commit

Permalink
perf: 优化部分提示消息
Browse files Browse the repository at this point in the history
  • Loading branch information
TomyJan committed Jun 26, 2024
1 parent 9363b5b commit cc081ed
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 17 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ git -C ./plugins/Yunzai-Kuro-Plugin/ pull
建议通过 [锅巴插件](https://gitee.com/guoba-yunzai/guoba-plugin) 进行配置. 当然, 你也可以自己配置, 默认配置文件位置 `./data/system/default_config.json`, 配置文件位置 `./config/config.json`, 配置项作用:

```json
// 此处的 json 可能忘记更新, 如果和实际的配置文件字段不同, qing'ji'sh
// 此处的 json 可能忘记更新, 如果和实际的配置文件字段不同, 请及时反馈
{
"logger": { // 插件的日志器配置
"logLevel": "info", // 日志等级, 可选值: trace, debug, info, warn, error, fatal
Expand Down Expand Up @@ -149,7 +149,7 @@ git -C ./plugins/Yunzai-Kuro-Plugin/ pull
- [ ] 鸣潮
- [ ] 战双

- [ ] 库街区战双游戏信息查询你
- [ ] 库街区战双游戏信息查询

- [ ] 角色信息

Expand Down
8 changes: 0 additions & 8 deletions apps/kuroBBSLogin.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,6 @@ export class kuroBBSLogin extends plugin {
}

async captchaLoginHelp(e) {
if (!e.isPrivate) {
this.reply(`请私聊使用, 或使用 #库洛在线登录`)
return false
}
let kuro = new kurologin(e)
await kuro.captchaLoginHelp()
return true
Expand All @@ -60,10 +56,6 @@ export class kuroBBSLogin extends plugin {
}

async tokenLoginHelp(e) {
if (!e.isPrivate) {
this.reply(`请私聊使用, 或使用 #库洛在线登录`)
return false
}
let kuro = new kurologin(e)
await kuro.tokenLoginHelp()
return true
Expand Down
2 changes: 2 additions & 0 deletions model/kuroBBSLogin.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ export default class kuroBBSLogin {
`建议优先使用 #库洛在线登录 , 无法使用可使用此功能`,
this.captchaLoginHelpTip,
'======== 登录步骤 ========',
'注意, 同一个验证码可以多次使用, 所以请私聊发送!',
`1. 前往 https://wiki.kurobbs.com/pns/home 点击右上角头像, 或下载安装库街区 APP 进入登录页面 \n2. 输入手机号点击发送验证码 \n3. 与 Bot 私聊, 将手机号和验证码用逗号隔开发送以完成绑定 \n \n例: 库洛账号18888888888,验证码114514`,
`注意: 库街区 APP 同战双一样, 只能登录一个设备, 即机器人的登录和你自己手机 APP 的登录会互顶. 如果你需要用到库街区 APP, 请发送 #库洛token登录 查看抓包登录教程`,
],
Expand Down Expand Up @@ -86,6 +87,7 @@ export default class kuroBBSLogin {
`此方法允许你的手机与 Bot 使用相同的 token 以实现共存 \n需要 iOS 设备, 或者 ROOT 的 Android 设备, 如果没有请放弃并使用 #库洛在线登录`,
this.tokenLoginHelpTip,
'======== 登录步骤 ========',
'高敏感登录方式, 请私聊使用!',
`1. 根据抓包教程文章安装抓包软件并完成抓包: https://blog.tomys.top/2023-07/kuro-token/ \n2. 与 Bot 私聊, 将抓包获取到的 token 以 #库洛token后面跟上你的token 发送给 Bot 即可完成登录`,
],
'[库洛插件] 库洛 token 登录帮助'
Expand Down
48 changes: 44 additions & 4 deletions model/mcGachaData.js
Original file line number Diff line number Diff line change
Expand Up @@ -53,28 +53,68 @@ export default class mcGachaData {

// 然后检查是否是通过链接上传的信息, 如果是链接上传就更新再生成, 如果是本地上传就直接生成
if (gachaLink) {
await this.e.reply(
let willUpdateMsg = await this.e.reply(
`QQ ${this.e.user_id} 的游戏 uid ${gameUid} 本地存在抽卡链接, 尝试更新抽卡记录...`
)
setTimeout(() => {
if (willUpdateMsg) {
try {
if (this.e.group) this.e.group.recallMsg(willUpdateMsg.message_id)
if (this.e.friend) this.e.friend.recallMsg(willUpdateMsg.message_id)
} catch (err) {
kuroLogger.warn('撤回消息失败:', JSON.stringify(err))
}
}
}, 6000)
let gachaRecord = await this.get(gachaLink, this.e.user_id)
if (typeof gachaRecord === 'string') {
// 如果记录更新失败, 进行提示; 如果更新成功, 不提示直接进入生成
await this.e.reply(
let updateFailMsg = await this.e.reply(
`QQ ${this.e.user_id} 的游戏 uid ${gameUid} 更新抽卡记录失败: \n${failedReason} \n将展示历史抽卡记录 `
)
setTimeout(() => {
if (updateFailMsg) {
try {
if (this.e.group) this.e.group.recallMsg(updateFailMsg.message_id)
if (this.e.friend) this.e.friend.recallMsg(updateFailMsg.message_id)
} catch (err) {
kuroLogger.warn('撤回消息失败:', JSON.stringify(err))
}
}
}, 6000)
} else {
// 更新成功, 存入本地
let gachaUpdateRet = await this.update(this.e.user_id, gachaRecord)
if (typeof gachaUpdateRet === 'string') {
await this.e.reply(
let saveFailedMsg = await this.e.reply(
`QQ ${this.e.user_id} 的游戏 uid ${gameUid} 抽卡更新记录成功但保存失败: \n${gachaUpdateRet} \n将展示历史抽卡记录 `
)
setTimeout(() => {
if (saveFailedMsg) {
try {
if (this.e.group) this.e.group.recallMsg(saveFailedMsg.message_id)
if (this.e.friend) this.e.friend.recallMsg(saveFailedMsg.message_id)
} catch (err) {
kuroLogger.warn('撤回消息失败:', JSON.stringify(err))
}
}
}, 6000)
} // 更新且保存成功, 无需提示
}
} else {
await this.e.reply(
let localUploadedMsg = await this.e.reply(
`QQ ${this.e.user_id} 的游戏 uid ${gameUid} 通过本地上传的抽卡记录, 将展示历史抽卡记录`
)
setTimeout(() => {
if (localUploadedMsg) {
try {
if (this.e.group) this.e.group.recallMsg(localUploadedMsg.message_id)
if (this.e.friend) this.e.friend.recallMsg(localUploadedMsg.message_id)
} catch (err) {
kuroLogger.warn('撤回消息失败:', JSON.stringify(err))
}
}
}, 6000)
}

if (tokenData && Object.keys(tokenData).length > 0) {
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "yunzai-kuro-plugin",
"version": "0.2.17-rel",
"version": "0.2.18-dev",
"author": "TomyJan",
"description": "Yunzai-Bot plugin for kuro games.",
"type": "module",
Expand Down

0 comments on commit cc081ed

Please sign in to comment.