#最强xx命令在角色不支持伤害计算时进行提示

This commit is contained in:
Kokomi 2022-11-09 06:32:20 +08:00
parent 78d0c0b856
commit 6f1eb64649
4 changed files with 22 additions and 13 deletions

View File

@ -1,11 +1,12 @@
# 2.0.6 # 2.0.7
* 增加纳西妲的伤害计算 * 增加群内排名功能 **暂未完全稳定,稳定后会开放配置开关**
* 底层元素反应计算逻辑更新 **@冷落** * 统计为bot本地统计只统计在群内主动查看过的面板数据
* 增加3.3角色信息及图片,可通过`#散兵天赋`、`#珐露珊命座`查看 * 统计自本次更新后开始记录,历史数据不会回溯
* 一些已知问题修复 * 可通过`#面板`、`#心海面板`、`#更新面板`等命令来触发排名数据更新
* 增加`#最强雷神`、`#最高分甘雨`命令,查看当前统计中最高练度/最高圣遗物评分的面板数据
# 2.0.1~2.0.5 # 2.0.1~2.0.6
* `#日历` 页面样式微调,功能升级 * `#日历` 页面样式微调,功能升级
* 日历中会展示角色生日 * 日历中会展示角色生日
@ -20,6 +21,9 @@
* `#面板`会展示角色名命座信息 * `#面板`会展示角色名命座信息
* 适配3.2的enka数据获取 * 适配3.2的enka数据获取
* `#深渊组队`使用新版胡桃API进行组队信息获取 * `#深渊组队`使用新版胡桃API进行组队信息获取
* 增加纳西妲的伤害计算
* 底层元素反应计算逻辑更新 **@冷落**
* 增加3.3角色信息及图片,可通过`#散兵天赋`、`#珐露珊命座`查看
# 2.0.0 # 2.0.0

View File

@ -1,4 +1,4 @@
import { Character, ProfileRank } from '../../models/index.js' import { Character, ProfileRank, ProfileDmg } from '../../models/index.js'
import { renderProfile } from './ProfileDetail.js' import { renderProfile } from './ProfileDetail.js'
export async function groupMaxProfile (e) { export async function groupMaxProfile (e) {
@ -7,19 +7,24 @@ export async function groupMaxProfile (e) {
return false return false
} }
let msg = e.original_msg || e.msg let msg = e.original_msg || e.msg
if (!/(最强|最高|最高分|最牛|第一)/.test(msg)) { if (!/(最强|最高|最高分|最牛|第一)/.test(msg)) {
return false return false
} }
let mode = /(分|圣遗物|评分|ACE)/.test(msg) ? 'mark' : 'dmg' let mode = /(分|圣遗物|评分|ACE)/.test(msg) ? 'mark' : 'dmg'
let name = msg.replace(/(#|最强|最高分|第一|最高|最牛|圣遗物|评分|群|面板|面版|详情)/g, '') let name = msg.replace(/(#|最强|最高分|第一|最高|最牛|圣遗物|评分|群内|群|排名|排行|面板|面版|详情)/g, '')
let char = Character.get(name) let char = Character.get(name)
if (!char) { if (!char) {
return false return false
} }
let uid = await ProfileRank.getGroupMaxUid(groupId, char.id, mode) let uid = await ProfileRank.getGroupMaxUid(groupId, char.id, mode)
if (uid) { if (uid && uid[0]) {
e.uid = uid e.uid = uid[0]
return await renderProfile(e, char) return await renderProfile(e, char)
} else {
if (mode === 'dmg' && !ProfileDmg.dmgRulePath(char.name)) {
e.reply(`${char.name}暂不支持伤害计算..`)
} else {
e.reply('暂无排名信息')
}
} }
} }

View File

@ -18,7 +18,7 @@ app.reg('profile-detail', profileDetail, {
}) })
app.reg('group-profile', groupMaxProfile, { app.reg('group-profile', groupMaxProfile, {
rule: /^#?(群|群内)?(最强|最高|最高分|最牛|第一)+.+/, rule: /^#?(群|群内)?(排名|排行)?(最强|最高|最高分|最牛|第一)+.+/,
name: '群内最强' name: '群内最强'
}) })

View File

@ -27,7 +27,7 @@
{{if char.groupRank}} {{if char.groupRank}}
{{set gr = char.groupRank}} {{set gr = char.groupRank}}
{{set rank = gr.rank > 9 ? 10:(gr.rank <=3 ? gr.rank : 4)}} {{set rank = gr.rank > 9 ? 10:(gr.rank <=3 ? gr.rank : 4)}}
<div class="group-rank rank-{{rank}} rank-type-gr.type"> <div class="group-rank rank-{{rank}} rank-type-{{gr.rankType}}">
<span>{{gr.rank}}</span> <span>{{gr.rank}}</span>
</div> </div>
{{/if}} {{/if}}