diff --git a/models/ProfileDmg.js b/models/ProfileDmg.js index 102f360c..329350fe 100644 --- a/models/ProfileDmg.js +++ b/models/ProfileDmg.js @@ -46,7 +46,7 @@ export default class ProfileDmg extends Base { let talentData = profile.talent || {} let detail = char.detail let { isSr, isGs } = this - lodash.forEach((isSr ? 'a,a2,e,e2,q,t' : 'a,e,q').split(','), (key) => { + lodash.forEach((isSr ? 'a,a2,e,e2,q,q2,t' : 'a,e,q').split(','), (key) => { let level = lodash.isNumber(talentData[key]) ? talentData[key] : (talentData[key]?.level || 1) if (key === 'a2' || key === 'e2') { let tmpKey = key === 'a2' ? 'a' : 'e' diff --git a/models/dmg/DmgAttr.js b/models/dmg/DmgAttr.js index 1084a5dc..70b9366c 100644 --- a/models/dmg/DmgAttr.js +++ b/models/dmg/DmgAttr.js @@ -21,7 +21,6 @@ let DmgAttr = { ret = lodash.merge({}, originalAttr) } - // 基础属性 lodash.forEach('atk,def,hp'.split(','), (key) => { ret[key] = AttrItem.create(originalAttr?.[key] || { @@ -41,7 +40,7 @@ let DmgAttr = { }) // 技能属性记录 - lodash.forEach((game === 'gs' ? 'a,a2,a3,e,q' : 'a,a2,a3,e,e2,q,t').split(','), (key) => { + lodash.forEach((game === 'gs' ? 'a,a2,a3,e,q' : 'a,a2,a3,e,e2,q,q2,t').split(','), (key) => { ret[key] = ret[key] || { pct: 0, // 倍率加成 multi: 0, // 独立倍率乘区加成,宵宫E等 diff --git a/resources/character/profile-stat.html b/resources/character/profile-stat.html index 7387826c..ec084c5d 100644 --- a/resources/character/profile-stat.html +++ b/resources/character/profile-stat.html @@ -76,7 +76,7 @@ {{else}} -
+
{{if weapon?.name}}
{{weapon.level}} diff --git a/resources/meta-gs/character/夏洛蒂/calc.js b/resources/meta-gs/character/夏洛蒂/calc.js index 391cd643..d05d8a47 100644 --- a/resources/meta-gs/character/夏洛蒂/calc.js +++ b/resources/meta-gs/character/夏洛蒂/calc.js @@ -9,14 +9,14 @@ export const details = [{ dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'], 'q') }, { title: 'Q释放治疗量', - dmg: ({ talent, attr, calc }, { heal }) => heal(talent.q['施放治疗量2'][0] / 100 * calc(attr.atk) + talent.q['施放治疗量2'][1]) + dmg: ({ talent, attr }, { heal }) => heal(talent.q['施放治疗量2'][0] / 100 * attr.atk + talent.q['施放治疗量2'][1]) }, { title: 'Q持续治疗量', - dmg: ({ talent, attr, calc }, { heal }) => heal(talent.q['相机持续治疗量2'][0] / 100 * calc(attr.atk) + talent.q['相机持续治疗量2'][1]) + dmg: ({ talent, attr }, { heal }) => heal(talent.q['相机持续治疗量2'][0] / 100 * attr.atk + talent.q['相机持续治疗量2'][1]) }, { title: '六命额外治疗量', cons: 6, - dmg: ({ attr, calc }, { heal }) => heal(0.42 * calc(attr.atk)) + dmg: ({ attr }, { heal }) => heal(0.42 * attr.atk) }] export const mainAttr = 'atk,cpct,cdmg,heal' diff --git a/resources/meta-sr/artifact/artis-mark.js b/resources/meta-sr/artifact/artis-mark.js index bb1da07a..73c90273 100644 --- a/resources/meta-sr/artifact/artis-mark.js +++ b/resources/meta-sr/artifact/artis-mark.js @@ -3,6 +3,7 @@ * 如character/${name}/artis.js下有角色自定义规则优先使用自定义 */ export const usefulAttr = { + 银枝: { hp: 0, atk: 75, def: 0, speed: 75, cpct: 100, cdmg: 100, stance: 0, heal: 0, recharge: 75, effPct: 0, effDef: 0, dmg: 100 }, 藿藿: { hp: 100, atk: 0, def: 50, speed: 75, cpct: 0, cdmg: 0, stance: 0, heal: 100, recharge: 100, effPct: 0, effDef: 50, dmg: 0 }, 桂乃芬: { hp: 0, atk: 100, def: 0, speed: 100, cpct: 0, cdmg: 0, stance: 50, heal: 0, recharge: 50, effPct: 75, effDef: 0, dmg: 100 }, '托帕&账账': { hp: 0, atk: 75, def: 0, speed: 100, cpct: 100, cdmg: 100, stance: 0, heal: 0, recharge: 50, effPct: 0, effDef: 0, dmg: 100 }, diff --git a/resources/meta-sr/character/藿藿/calc.js b/resources/meta-sr/character/藿藿/calc.js new file mode 100644 index 00000000..022a6eb8 --- /dev/null +++ b/resources/meta-sr/character/藿藿/calc.js @@ -0,0 +1,18 @@ +export const details = [{ + title: '普攻伤害', + dmg: ({ talent, attr }, { basic }) => basic(talent.a['技能伤害'] * attr.hp, 'a') +}, { + title: '战技生命回复·主目标', + dmg: ({ talent, attr }, { heal }) => heal(attr.hp * talent.e['目标治疗·百分比生命'] + talent.e['目标治疗·固定值']) +}, { + title: '战技生命回复·相邻目标', + dmg: ({ talent, attr }, { heal }) => heal(attr.hp * talent.e['相邻目标治疗·百分比生命'] + talent.e['相邻目标治疗·固定值']) +}, { + title: '天赋禳命生命回复', + dmg: ({ talent, attr }, { heal }) => heal(attr.hp * talent.t['治疗·百分比生命'] + talent.t['治疗·百分比生命']) +}] + +export const mainAttr = 'hp,cpct,cdmg,heal' +export const defDmgIdx = 1 + +export const createdBy = 'Aluxes' diff --git a/resources/meta-sr/character/银枝/calc.js b/resources/meta-sr/character/银枝/calc.js new file mode 100644 index 00000000..3793389d --- /dev/null +++ b/resources/meta-sr/character/银枝/calc.js @@ -0,0 +1,61 @@ +export const details = [{ + title: '普攻伤害', + dmg: ({ talent }, dmg) => dmg(talent.a['技能伤害'], 'a') +}, { + title: '战技伤害', + dmg: ({ talent }, dmg) => dmg(talent.e['技能伤害'], 'e') +}, { + title: '终结技伤害', + params: { q: true }, + dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'], 'q') +}, { + title: '强化终结技总伤害', + params: { q: true }, + dmg: ({ talent }, dmg) => { + const td = talent.q2['技能伤害'] + talent.q2['额外随机伤害'] * 6 + return dmg(td, 'q') + } +}] + +export const defDmgIdx = 3 +export const mainAttr = 'atk,cpct,cdmg' + +export const buffs = [{ + title: '天赋-勇气:对当前生命百分比小于等于50%的敌人目标造成的伤害提高[dmg]%', + trees: 2, + data: { + dmg: 15 + } +}, { + title: '天赋-崇高的客体:[_count]层【升格】提升暴击率[cpct]%', + data: { + _count: ({ cons }) => cons < 4 ? 10 : 12, + cpct: ({ cons }) => cons < 4 ? 25 : 30 + } +}, { + title: '银枝1命:[_count]层【升格】提升暴击伤害[cdmg]%', + cons: 1, + data: { + _count: ({ cons }) => cons < 4 ? 10 : 12, + cdmg: ({ cons }) => cons < 4 ? 40 : 48 + } +}, { + title: '银枝2命:释放终结技命中3名及以上敌人时,攻击力提高[atkPct]%', + cons: 2, + check: ({ params }) => params.q === true, + data: { + atkPct: 40 + } +}, { + title: '银枝4命:天赋【升格】可叠加上限提高至12层', + cons: 4 +}, { + title: '银枝6命:释放终结技时,无视敌方目标[ignore]%的防御力', + cons: 6, + check: ({ params }) => params.q === true, + data: { + ignore: 30 + } +}] + +export const createdBy = 'Aluxes' diff --git a/resources/meta-sr/weapon/alias.js b/resources/meta-sr/weapon/alias.js index a859bb38..a16501da 100644 --- a/resources/meta-sr/weapon/alias.js +++ b/resources/meta-sr/weapon/alias.js @@ -1,118 +1,117 @@ -import lodash from 'lodash' - export const abbr = { // 巡猎 '烦恼着,幸福着': '烦恼着幸福着', // 丰饶 // 毁灭 '汪!散步时间!': '散步时间', - '无可取代的东西': '无可取代东西', - '比阳光更明亮的': '比阳光更明亮,光一直亮', - '记一位星神的陨落': '星神的陨落', + 无可取代的东西: '无可取代东西', + 比阳光更明亮的: '比阳光更明亮', + 记一位星神的陨落: '星神的陨落', // 存护 // 虚无 - '决心如汗珠般闪耀': '汗珠般闪耀', - '新手任务开始前': '新手任务', + 决心如汗珠般闪耀: '汗珠般闪耀', + 新手任务开始前: '新手任务', // 同谐 - '但战斗还未结束': '战斗还未结束', - //智识 - '别让世界静下来': '别让世界静', - '今日亦是和平的一日': '今日亦是和平' + '舞!舞!舞!': '舞舞舞', + 但战斗还未结束: '战斗还未结束', + // 智识 + 别让世界静下来: '别让世界静下', + 今日亦是和平的一日: '今日亦是和平' } export const aliasCfg = { // 巡猎 - '锋镝': '', - '离弦': '', - '相抗': '', - '唯有沉默': '沉默', - '论剑': '', + 锋镝: '', + 离弦: '', + 相抗: '', + 唯有沉默: '沉默', + 论剑: '', '点个关注吧!': '点个关注吧,点个关注,点关注,关注,点个赞吧,点个赞,点赞', - '春水初生': '春水,纯水出生,纯水出生', - '重返幽冥': '幽冥', - '于夜色中': '于夜色中,与夜色中,夜色', - '如泥酣眠': '酣眠', + 春水初生: '春水,纯水出生,纯水出生', + 重返幽冥: '幽冥', + 于夜色中: '于夜色中,与夜色中,夜色', + 如泥酣眠: '酣眠', '烦恼着,幸福着': '烦恼着幸福着,烦恼着,幸福着,烦恼,幸福', - '星海巡航': '星海,巡航', + 星海巡航: '星海,巡航', // 丰饶 - '物穰': '', - '嘉果': '', - '蕃息': '', - '一场术后对话': '一场术后对话,术后对话', - '同一种心情': '', - '此时恰好': '', - '等价交换': '', - '暖夜不会漫长': '暖夜不漫长', - '棺的回响': '棺一直响,棺响', - '时节不居': '时节', + 物穰: '', + 嘉果: '', + 蕃息: '', + 一场术后对话: '一场术后对话,术后对话', + 同一种心情: '', + 此时恰好: '', + 等价交换: '', + 暖夜不会漫长: '暖夜不漫长', + 棺的回响: '棺一直响,棺响', + 时节不居: '时节', '嘿,我在这儿': '我在这儿,我在这', - '惊魂夜': '魂一直惊', + 惊魂夜: '魂一直惊', // 毁灭 - '天倾': '', - '乐圮': '', - '俱殁': '', - '鼹鼠党欢迎你': '鼹鼠党', - '秘密誓心': '', - '在蓝天下': '', + 天倾: '', + 乐圮: '', + 俱殁: '', + 鼹鼠党欢迎你: '鼹鼠党', + 秘密誓心: '', + 在蓝天下: '', '汪!散步时间!': '散步时间,散步', - '无处可逃': '', - '无可取代的东西': '无可取代', - '到不了的彼岸': '岸一直到,人一直活,到彼岸,彼岸', - '此身为剑': '以身为剑,手一直摸', - '比阳光更明亮的': '比阳光更明亮,比阳的,阳光明亮,比阳光,比阳,阳光', - '记一位星神的陨落': '星神的陨落,星神陨落', + 无处可逃: '', + 无可取代的东西: '无可取代', + 到不了的彼岸: '岸一直到,人一直活,到彼岸,彼岸', + 此身为剑: '以身为剑,手一直摸', + 比阳光更明亮的: '比阳光更明亮,比阳的,阳光明亮,比阳光,比阳,阳光', + 记一位星神的陨落: '星神的陨落,星神陨落', // 存护 - '琥珀': '', - '戍御': '', - '开疆': '', - '余生的第一天': '余生第一天,第一天', - '朗道的选择': '朗道,朗道选择', - '宇宙市场趋势': '宇宙市场,市场趋势', - '我们是地火': '地火', + 琥珀: '', + 戍御: '', + 开疆: '', + 余生的第一天: '余生第一天,第一天', + 朗道的选择: '朗道,朗道选择', + 宇宙市场趋势: '宇宙市场,市场趋势', + 我们是地火: '地火', '这就是我啦!': '这就是我啦,就是我啦,就是我', - '制胜的瞬间': '致胜的瞬间,制胜,致胜', - '她已闭上双眼': '眼一直闭,闭上双眼,她已闭眼,闭眼', - '记忆的质料': '记忆质料,记忆', + 制胜的瞬间: '致胜的瞬间,制胜,致胜', + 她已闭上双眼: '眼一直闭,闭上双眼,她已闭眼,闭眼', + 记忆的质料: '记忆质料,记忆', // 虚无 - '幽邃': '', - '渊环': '', - '匿影': '', - '晚安与睡颜': '晚安睡颜,晚安', - '猎物的视线': '猎物视线,猎物', - '决心如汗珠般闪耀': '决心,汗珠', - '延长记号': '记号延长,记号', - '后会有期': '后会无期', - '新手任务开始前': '新手任务,任务开始', - '以世界之名': '世界之名', - '只需等待': '妈一直等,菜一直等,等待', - '雨一直下': '', - '孤独的疗愈': '孤独疗愈,孤独', + 幽邃: '', + 渊环: '', + 匿影: '', + 晚安与睡颜: '晚安睡颜,晚安', + 猎物的视线: '猎物视线,猎物', + 决心如汗珠般闪耀: '决心,汗珠', + 延长记号: '记号延长,记号', + 后会有期: '后会无期', + 新手任务开始前: '新手任务,任务开始', + 以世界之名: '世界之名', + 只需等待: '妈一直等,菜一直等,等待', + 雨一直下: '', + 孤独的疗愈: '孤独疗愈,孤独', // 同谐 - '齐颂': '', - '轮契': '', - '调和': '', - '记忆中的模样': '记忆的模样,记忆模样,记忆', - '与行星相会': '行星相会', + 齐颂: '', + 轮契: '', + 调和: '', + 记忆中的模样: '记忆的模样,记忆模样,记忆', + 与行星相会: '行星相会', '舞!舞!舞!': '舞舞舞', - '过往未来': '', - '镂月裁云之意': '镂月裁云之意,镂月裁云,镂云裁月之意,楼月裁云之意,楼月裁云', - '但战斗还未结束': '战斗还未结束', + 过往未来: '', + 镂月裁云之意: '镂月裁云之意,镂月裁云,镂云裁月之意,楼月裁云之意,楼月裁云', + 但战斗还未结束: '战斗还未结束', // 智识 - '智库': '', - '灵钥': '', - '睿见': '', + 智库: '', + 灵钥: '', + 睿见: '', '「我」的诞生': '我的诞生', - '别让世界静下来': '让世界静下来', - '天才们的休憩': '天才的休憩,天才', - '早餐的仪式感': '早餐,仪式感', - '今日亦是和平的一日': '和平的一日,和平一日', - '银河铁道之夜': '银河铁道,星穹铁道之夜,星穹铁道', - '拂晓之前': '拂晓', + 别让世界静下来: '让世界静下来', + 天才们的休憩: '天才的休憩,天才', + 早餐的仪式感: '早餐,仪式感', + 今日亦是和平的一日: '和平的一日,和平一日', + 银河铁道之夜: '银河铁道,星穹铁道之夜,星穹铁道', + 拂晓之前: '拂晓', '片刻,留在眼底': '留在眼底,眼一直留' }