mirror of
https://github.com/yoimiya-kokomi/miao-plugin.git
synced 2024-11-16 04:35:42 +00:00
加面板图开关,面板相关一些已知Bug修复
This commit is contained in:
parent
4f79e42214
commit
276dba9b7e
@ -160,9 +160,7 @@ let ProfileDetail = {
|
|||||||
|
|
||||||
let artisDetail = profile.getArtisMark()
|
let artisDetail = profile.getArtisMark()
|
||||||
let artisKeyTitle = ProfileArtis.getArtisKeyTitle()
|
let artisKeyTitle = ProfileArtis.getArtisKeyTitle()
|
||||||
let costumeSplash = profile.costumeSplash
|
let renderData = {
|
||||||
// 渲染图像
|
|
||||||
let msgRes = await Common.render('character/profile-detail', {
|
|
||||||
save_id: uid,
|
save_id: uid,
|
||||||
uid,
|
uid,
|
||||||
data: profile.getData('name,abbr,cons,level,weapon,talent,dataSource,updateTime,imgs,costumeSplash'),
|
data: profile.getData('name,abbr,cons,level,weapon,talent,dataSource,updateTime,imgs,costumeSplash'),
|
||||||
@ -175,12 +173,14 @@ let ProfileDetail = {
|
|||||||
mode,
|
mode,
|
||||||
wCfg,
|
wCfg,
|
||||||
changeProfile: e._profileMsg
|
changeProfile: e._profileMsg
|
||||||
}, { e, scale: 1.6, retMsgId: true })
|
}
|
||||||
|
// 渲染图像
|
||||||
|
let msgRes = await Common.render('character/profile-detail', renderData, { e, scale: 1.6, retMsgId: true })
|
||||||
if (msgRes && msgRes.message_id) {
|
if (msgRes && msgRes.message_id) {
|
||||||
// 如果消息发送成功,就将message_id和图片路径存起来,3小时过期
|
// 如果消息发送成功,就将message_id和图片路径存起来,3小时过期
|
||||||
await redis.set(`miao:original-picture:${msgRes.message_id}`, JSON.stringify({
|
await redis.set(`miao:original-picture:${msgRes.message_id}`, JSON.stringify({
|
||||||
type: 'profile',
|
type: 'profile',
|
||||||
img: costumeSplash
|
img: renderData?.data?.costumeSplash
|
||||||
}), { EX: 3600 * 3 })
|
}), { EX: 3600 * 3 })
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
|
@ -21,6 +21,9 @@ export default async function (path, params, cfg) {
|
|||||||
sys: {
|
sys: {
|
||||||
scale: Cfg.scale(cfg.scale || 1),
|
scale: Cfg.scale(cfg.scale || 1),
|
||||||
copyright: `Created By Yunzai-Bot<span class="version">${Version.yunzai}</span> & Miao-Plugin<span class="version">${Version.version}</span>`
|
copyright: `Created By Yunzai-Bot<span class="version">${Version.yunzai}</span> & Miao-Plugin<span class="version">${Version.version}</span>`
|
||||||
|
},
|
||||||
|
pageGotoParams: {
|
||||||
|
waitUntil: 'networkidle2'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -76,6 +76,12 @@ export const cfgSchema = {
|
|||||||
input: (n) => n * 1 === 1 ? 1 : 2,
|
input: (n) => n * 1 === 1 ? 1 : 2,
|
||||||
desc: '面板服务优先选择:1:自动(具备有效Token时优先喵喵Api,否则Enka),2:Enka服务优先'
|
desc: '面板服务优先选择:1:自动(具备有效Token时优先喵喵Api,否则Enka),2:Enka服务优先'
|
||||||
},
|
},
|
||||||
|
costumeSplash: {
|
||||||
|
title: '使用自定义面板插图',
|
||||||
|
key: '面板图',
|
||||||
|
def: true,
|
||||||
|
desc: '开启彩蛋图(三皇冠/ACE/满命)及自定义面板图,关闭使用官方立绘'
|
||||||
|
},
|
||||||
teamCalc: {
|
teamCalc: {
|
||||||
title: '组队加成伤害',
|
title: '组队加成伤害',
|
||||||
key: '组队',
|
key: '组队',
|
||||||
|
@ -90,6 +90,9 @@ export default class MysApi {
|
|||||||
}
|
}
|
||||||
let e = this.e
|
let e = this.e
|
||||||
let mys = await this.getMysApi(e, api, { log: false })
|
let mys = await this.getMysApi(e, api, { log: false })
|
||||||
|
if (!mys) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
let mysInfo = this.mysInfo || {}
|
let mysInfo = this.mysInfo || {}
|
||||||
// 暂时先在plugin侧阻止错误,防止刷屏
|
// 暂时先在plugin侧阻止错误,防止刷屏
|
||||||
e._original_reply = e._original_reply || e.reply
|
e._original_reply = e._original_reply || e.reply
|
||||||
|
@ -27,7 +27,7 @@ export default class Player extends Base {
|
|||||||
}
|
}
|
||||||
this.uid = uid
|
this.uid = uid
|
||||||
this.reload()
|
this.reload()
|
||||||
return this._cache()
|
return this._cache(100)
|
||||||
}
|
}
|
||||||
|
|
||||||
get hasProfile () {
|
get hasProfile () {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import lodash from 'lodash'
|
import lodash from 'lodash'
|
||||||
import AvatarData from './AvatarData.js'
|
import AvatarData from './AvatarData.js'
|
||||||
import { Data } from '../components/index.js'
|
import { Data, Cfg } from '../components/index.js'
|
||||||
import { ProfileArtis, ProfileDmg } from './index.js'
|
import { ProfileArtis, ProfileDmg } from './index.js'
|
||||||
import AttrCalc from './profile/AttrCalc.js'
|
import AttrCalc from './profile/AttrCalc.js'
|
||||||
import CharImg from './character/CharImg.js'
|
import CharImg from './character/CharImg.js'
|
||||||
@ -18,14 +18,18 @@ export default class ProfileData extends AvatarData {
|
|||||||
return this.isProfile
|
return this.isProfile
|
||||||
}
|
}
|
||||||
|
|
||||||
get imgs(){
|
get imgs () {
|
||||||
return this.char.getImgs(this.costume)
|
return this.char.getImgs(this.costume) || {}
|
||||||
}
|
}
|
||||||
|
|
||||||
get costumeSplash () {
|
get costumeSplash () {
|
||||||
let costume = this._costume
|
let costume = this._costume
|
||||||
costume = this.char.checkCostume(costume) ? '2' : ''
|
costume = this.char.checkCostume(costume) ? '2' : ''
|
||||||
|
|
||||||
|
if (!Cfg.get('costumeSplash', true)) {
|
||||||
|
return this.char.getImgs(this._costume).splash
|
||||||
|
}
|
||||||
|
|
||||||
let nPath = `meta/character/${this.name}`
|
let nPath = `meta/character/${this.name}`
|
||||||
let isSuper = false
|
let isSuper = false
|
||||||
let talent = this.talent ? lodash.map(this.talent, (ds) => ds.original).join('') : ''
|
let talent = this.talent ? lodash.map(this.talent, (ds) => ds.original).join('') : ''
|
||||||
|
@ -193,10 +193,15 @@ export default class ProfileDmg extends Base {
|
|||||||
detail = detailMap[0]
|
detail = detailMap[0]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (lodash.isFunction(detail)) {
|
||||||
|
let { attr } = DmgAttr.calcAttr({ originalAttr, buffs, meta })
|
||||||
|
let ds = lodash.merge({ talent }, DmgAttr.getDs(attr, meta))
|
||||||
|
detail = detail({ ...ds, attr, profile })
|
||||||
|
}
|
||||||
dmgDetail = {
|
dmgDetail = {
|
||||||
title: detail.title,
|
title: detail.title,
|
||||||
userIdx: detail.userIdx,
|
userIdx: detail.userIdx || defDmgIdx,
|
||||||
basicRet: lodash.merge({}, ret[detail.userIdx]),
|
basicRet: lodash.merge({}, ret[detail.userIdx] || ret[defDmgIdx]),
|
||||||
attr: []
|
attr: []
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -241,8 +241,10 @@ let ArtisMark = {
|
|||||||
hasAttr (artis) {
|
hasAttr (artis) {
|
||||||
for (let idx = 1; idx <= 5; idx++) {
|
for (let idx = 1; idx <= 5; idx++) {
|
||||||
let ds = artis[idx]
|
let ds = artis[idx]
|
||||||
if (ds && (!ds.name || !ds.main || !ds.attrs || !ds?.main?.key)) {
|
if (ds) {
|
||||||
return false
|
if (!ds.name || !ds.main || !ds.attrs || !ds?.main?.key) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
|
@ -8,7 +8,8 @@
|
|||||||
|
|
||||||
{{set dataSource = data.dataSource}}
|
{{set dataSource = data.dataSource}}
|
||||||
{{set talentMap = {a: '普攻', e: '战技', q: '爆发'} }}
|
{{set talentMap = {a: '普攻', e: '战技', q: '爆发'} }}
|
||||||
{{set {imgs,costumeSplash} = data }}
|
{{set {imgs, costumeSplash} = data }}
|
||||||
|
{{set imgs = imgs || {} }}
|
||||||
|
|
||||||
{{block 'main'}}
|
{{block 'main'}}
|
||||||
<div class="basic">
|
<div class="basic">
|
||||||
@ -142,7 +143,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<!-- 【 伤害表格 】 -->
|
<!-- 【 伤害表格 】 -->
|
||||||
{{ set {dmgRet, dmgCfg, enemyName, dmgMsg, dmgData} = dmgCalc }}
|
{{ set {dmgRet, dmgCfg, enemyLv, enemyName, dmgMsg, dmgData} = dmgCalc }}
|
||||||
<div>
|
<div>
|
||||||
{{if mode === "profile"}}
|
{{if mode === "profile"}}
|
||||||
<div class="cont">
|
<div class="cont">
|
||||||
@ -152,7 +153,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{if dmgData.length > 0}}
|
{{if dmgData?.length > 0}}
|
||||||
<div class="dmg-cont dmg-list cont">
|
<div class="dmg-cont dmg-list cont">
|
||||||
<div class="cont-title">
|
<div class="cont-title">
|
||||||
伤害计算<span>目标为{{enemyLv}}级{{enemyName||'小宝'}},如需调整等级可使用 #敌人等级{{enemyLv}} 来进行设置</span>
|
伤害计算<span>目标为{{enemyLv}}级{{enemyName||'小宝'}},如需调整等级可使用 #敌人等级{{enemyLv}} 来进行设置</span>
|
||||||
@ -188,7 +189,7 @@
|
|||||||
<!-- 【 伤害变化详情 】 -->
|
<!-- 【 伤害变化详情 】 -->
|
||||||
<div>
|
<div>
|
||||||
{{if mode === "dmg"}}
|
{{if mode === "dmg"}}
|
||||||
{{if dmgCfg && dmgCfg.attr && dmgCfg.attr.length>0 && dmgRet && dmgRet.length >3}}
|
{{if dmgCfg && dmgCfg.attr && dmgCfg.attr.length>0 && dmgRet}}
|
||||||
<div class="dmg-calc dmg-cont cont">
|
<div class="dmg-calc dmg-cont cont">
|
||||||
<div class="cont-title">
|
<div class="cont-title">
|
||||||
词条伤害计算<span>#{{data.abbr}}伤害{{dmgCfg.userIdx+1}}: 当前计算为[{{dmgCfg.title}}]</span>
|
词条伤害计算<span>#{{data.abbr}}伤害{{dmgCfg.userIdx+1}}: 当前计算为[{{dmgCfg.title}}]</span>
|
||||||
|
Loading…
Reference in New Issue
Block a user