mirror of
https://github.com/yoimiya-kokomi/miao-plugin.git
synced 2024-11-26 01:40:53 +00:00
parent
8e8a469b4f
commit
c19c731ce7
@ -46,14 +46,14 @@ export default class ProfileDmg extends Base {
|
||||
let talentData = profile.talent || {}
|
||||
let detail = char.detail
|
||||
let { isSr, isGs } = this
|
||||
lodash.forEach((isSr ? 'a,e,q,t' : 'a,e,q').split(','), (key) => {
|
||||
lodash.forEach((isSr ? 'a,a2,e,q,t' : 'a,e,q').split(','), (key) => {
|
||||
let level = lodash.isNumber(talentData[key]) ? talentData[key] : (talentData[key]?.level || 1)
|
||||
let map = {}
|
||||
if (isGs && detail.talentData) {
|
||||
lodash.forEach(detail.talentData[key], (ds, key) => {
|
||||
map[key] = ds[level - 1]
|
||||
})
|
||||
} else if (isSr && detail.talent) {
|
||||
} else if (isSr && detail.talent && detail.talent[key]) {
|
||||
lodash.forEach(detail.talent[key].tables, (ds) => {
|
||||
map[ds.name] = ds.values[level - 1]
|
||||
})
|
||||
|
@ -3,6 +3,7 @@
|
||||
* 如character/${name}/artis.js下有角色自定义规则优先使用自定义
|
||||
*/
|
||||
export const usefulAttr = {
|
||||
刃:{ hp: 100, atk: 50, def: 0, speed: 100, cpct: 100, cdmg: 100, stance: 0, heal: 0, recharge: 50, effPct: 0, effDef: 0, dmg: 100 },
|
||||
罗刹: { hp: 0, atk: 100, def: 0, speed: 100, cpct: 100, cdmg: 100, stance: 0, heal: 100, recharge: 100, effPct: 0, effDef: 50, dmg: 100 },
|
||||
银狼: { hp: 0, atk: 75, def: 0, speed: 100, cpct: 100, cdmg: 100, stance: 0, heal: 0, recharge: 75, effPct: 100, 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 },
|
||||
|
98
resources/meta-sr/character/刃/calc.js
Normal file
98
resources/meta-sr/character/刃/calc.js
Normal file
@ -0,0 +1,98 @@
|
||||
export const details = [{
|
||||
title: '普攻伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['技能伤害'], 'a')
|
||||
}, {
|
||||
title: '强化普攻(单目标)',
|
||||
params: { ebuff: true },
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
const td1 = talent.a2['技能伤害·攻击倍率']
|
||||
const td2 = talent.a2['技能伤害·生命倍率']
|
||||
const atk = calc(attr.atk)
|
||||
const hp = calc(attr.hp)
|
||||
return basic(td1 * atk + td2 * hp, 'a')
|
||||
}
|
||||
}, {
|
||||
title: '强化普攻(三目标)',
|
||||
params: { ebuff: true },
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
const td1 = talent.a2['技能伤害·攻击倍率'] + talent.a2['技能伤害·攻击倍率·相邻目标']*2
|
||||
const td2 = talent.a2['技能伤害·生命倍率'] + talent.a2['技能伤害·生命倍率·相邻目标']*2
|
||||
const atk = calc(attr.atk)
|
||||
const hp = calc(attr.hp)
|
||||
return basic( td1 * atk + td2 * hp, 'a')
|
||||
}
|
||||
}, {
|
||||
title: '追加攻击',
|
||||
params: { ebuff: true },
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
const td1 = talent.t['技能伤害·攻击倍率']
|
||||
const td2 = talent.t['技能伤害·生命倍率']
|
||||
const atk = calc(attr.atk)
|
||||
const hp = calc(attr.hp)
|
||||
return basic( td1 * atk + td2 * hp, 't')
|
||||
}
|
||||
}, {
|
||||
title: '终结技伤害(单目标)',
|
||||
params: { ebuff: true },
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
const td1 = talent.q['技能伤害·攻击倍率']
|
||||
const td2 = talent.q['技能伤害·生命倍率']
|
||||
const td3 = talent.q['技能伤害·已损失生命值倍率']
|
||||
const atk = calc(attr.atk)
|
||||
const hp = calc(attr.hp)
|
||||
return basic( td1 * atk + td2 * hp + td3 * hp * 0.9, 'q')
|
||||
}
|
||||
}, {
|
||||
title: '终结技伤害(三目标)',
|
||||
params: { ebuff: true },
|
||||
dmg: ({ talent, attr, calc }, { basic }) => {
|
||||
const td1 = talent.q['技能伤害·攻击倍率'] + talent.q['技能伤害·攻击倍率·相邻目标']*2
|
||||
const td2 = talent.q['技能伤害·生命倍率'] + talent.q['技能伤害·生命倍率·相邻目标']*2
|
||||
const td3 = talent.q['技能伤害·已损失生命值倍率'] + talent.q['技能伤害·已损失生命值倍率·相邻目标']*2
|
||||
const atk = calc(attr.atk)
|
||||
const hp = calc(attr.hp)
|
||||
return basic( td1 * atk + td2 * hp + td3 * hp * 0.9, 'q')
|
||||
}
|
||||
}]
|
||||
|
||||
export const defDmgIdx = 1
|
||||
export const mainAttr = 'hp,atk,cpct,cdmg,speed'
|
||||
|
||||
export const buffs = [{
|
||||
check: ({ params }) => params.ebuff === true,
|
||||
title:'地狱变:造成伤害提高[dmg]%',
|
||||
data: {
|
||||
dmg: ({ talent }) => talent.e['伤害提高'] * 100
|
||||
}
|
||||
}, {
|
||||
title: '行迹-坏劫隳亡:天赋释放的追加攻击伤害提高20%',
|
||||
tree: 2,
|
||||
data: {
|
||||
tDmg: 20
|
||||
}
|
||||
}, {
|
||||
title:'刃1命:终结技对指定敌方单体造成伤害值提高[qPlus]',
|
||||
cons: 1,
|
||||
data: {
|
||||
qPlus: ({ attr, calc }) => 1.5 * calc(attr.hp) * 0.9
|
||||
}
|
||||
}, {
|
||||
check: ({ params }) => params.ebuff === true,
|
||||
title:'刃2命:处于【地狱变】状态时,暴击率提高15%',
|
||||
cons: 2,
|
||||
data: {
|
||||
cpct: 15
|
||||
}
|
||||
}, {
|
||||
title:'刃4命:生命值降低至小于等于50%时,提高生命值上限,满Buff下提高40%',
|
||||
cons: 4,
|
||||
data: {
|
||||
hpPct: 40
|
||||
}
|
||||
}, {
|
||||
title:'刃6命:追加攻击造成的伤害值额外提高[tPlus]',
|
||||
cons: 6,
|
||||
data: {
|
||||
tPlus: ({ attr, calc }) => calc(attr.hp) * 0.5
|
||||
}
|
||||
}]
|
@ -75,7 +75,7 @@
|
||||
"desc": "消耗等同于刃生命上限<nobr>30.0%</nobr>的生命值,进入【地狱变】状态。<br />处于【地狱变】状态时无法施放战技,同时使自身造成的伤害提高<nobr>$1[i]%</nobr>,普攻【支离剑】强化为【无间剑树】,持续<nobr>3</nobr>回合。<br />若当前生命值不足,施放战技时刃的当前生命值降低至1点。<br />该战技无法恢复能量。施放该战技后,本回合不会结束。",
|
||||
"tables": {
|
||||
"1": {
|
||||
"name": "TODO",
|
||||
"name": "伤害提高",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.12,
|
||||
@ -105,7 +105,7 @@
|
||||
"desc": "将刃的当前生命值转化为生命上限的<nobr>50%</nobr>,并对敌方单体造成等同于刃<nobr>$1[i]%</nobr>攻击力+<nobr>$2[i]%</nobr>生命上限+<nobr>$3[i]%</nobr>本场战斗中累计已损失生命值的<span>风</span>属性伤害,同时对其相邻目标造成等同于刃<nobr>$4[f1]%</nobr>攻击力+<nobr>$5[i]%</nobr>生命上限+<nobr>$6[i]%</nobr>本场战斗中累计已损失生命值的<span>风</span>属性伤害。<br />本场战斗中累计已损失生命值最高不超过刃生命上限的<nobr>90.0%</nobr>,施放终结技后会清空并进行重新累计。",
|
||||
"tables": {
|
||||
"1": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·攻击倍率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.24,
|
||||
@ -126,7 +126,7 @@
|
||||
]
|
||||
},
|
||||
"2": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·生命倍率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.6,
|
||||
@ -147,7 +147,7 @@
|
||||
]
|
||||
},
|
||||
"3": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·已损失生命值倍率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.6,
|
||||
@ -168,7 +168,7 @@
|
||||
]
|
||||
},
|
||||
"4": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·攻击倍率·相邻目标",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.096,
|
||||
@ -189,7 +189,7 @@
|
||||
]
|
||||
},
|
||||
"5": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·生命倍率·相邻目标",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.24,
|
||||
@ -210,7 +210,7 @@
|
||||
]
|
||||
},
|
||||
"6": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·已损失生命值倍率·相邻目标",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.24,
|
||||
@ -240,7 +240,7 @@
|
||||
"desc": "刃受到伤害或消耗生命值时,获得1层充能,最多叠加5层。该效果每次受到攻击最多叠加1层。<br />当充能叠加至上限时,立即对敌方全体施放1次<u>追加攻击</u>,造成等同于刃<nobr>$1[i]%</nobr>攻击力+<nobr>$2[i]%</nobr>生命上限的<span>风</span>属性伤害并回复等同于刃生命上限<nobr>25.0%</nobr>的生命值,施放追加攻击后,消耗所有充能。",
|
||||
"tables": {
|
||||
"1": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·攻击倍率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.22,
|
||||
@ -261,7 +261,7 @@
|
||||
]
|
||||
},
|
||||
"2": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·生命倍率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.55,
|
||||
@ -299,7 +299,7 @@
|
||||
"desc": "消耗等同于刃生命上限<nobr>10.0%</nobr>的生命值,对指定敌方单体造成等同于刃<nobr>$1[i]%</nobr>攻击力+<nobr>$2[i]%</nobr>生命上限的<span>风</span>属性伤害,同时对其相邻目标造成等同于刃<nobr>$3[i]%</nobr>攻击力+<nobr>$4[i]%</nobr>生命上限的<span>风</span>属性伤害。<br />若当前生命值不足,施放【无间剑树】时刃的当前生命值降低至1点。<br />【无间剑树】无法恢复战技点。",
|
||||
"tables": {
|
||||
"1": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·攻击倍率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.2,
|
||||
@ -314,7 +314,7 @@
|
||||
]
|
||||
},
|
||||
"2": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·生命倍率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.5,
|
||||
@ -329,7 +329,7 @@
|
||||
]
|
||||
},
|
||||
"3": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·攻击倍率·相邻目标",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.08,
|
||||
@ -344,7 +344,7 @@
|
||||
]
|
||||
},
|
||||
"4": {
|
||||
"name": "TODO",
|
||||
"name": "技能伤害·生命倍率·相邻目标",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.2,
|
||||
|
@ -3,7 +3,7 @@ export const details = [{
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['技能伤害'], 'a')
|
||||
}, {
|
||||
title: '战技伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['单体伤害'], 'e')
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['技能伤害'], 'e')
|
||||
}, {
|
||||
title: '终结技伤害',
|
||||
dmg: ({ talent, cons }, dmg) => {
|
||||
@ -22,7 +22,7 @@ export const buffs = [{
|
||||
}, {
|
||||
title: '银狼战技:添加弱点降低对方对应属性抗性[kx]%',
|
||||
data: {
|
||||
kx: ({ talent }) => talent.e['伤害抗性降低'] * 100
|
||||
kx: 20
|
||||
}
|
||||
}, {
|
||||
title: '银狼终结技:释放终结技降低敌方防御[enemyDef]%',
|
||||
|
@ -74,7 +74,7 @@
|
||||
"desc": "有<nobr>$1[i]%</nobr>的<u>基础概率</u>为指定敌方单体目标添加1个场上我方目标持有属性的弱点,且该弱点对应属性的抗性降低<nobr>20.0%</nobr>,持续<nobr>2</nobr>回合。若添加的是敌方目标原有属性的弱点,则不会触发对应属性的抗性降低效果。<br />单个敌方目标仅能被银狼添加1个弱点,当银狼对其再次添加弱点时,仅保留最新添加的弱点。<br />有<nobr>100.0%</nobr>的<u>基础概率</u>额外使该目标的全属性抗性降低<nobr>$2[f1]%</nobr>,持续<nobr>2</nobr>回合。<br />对该目标造成等同于银狼<nobr>$3[i]%</nobr>攻击力的<span>量子</span>属性伤害。",
|
||||
"tables": {
|
||||
"1": {
|
||||
"name": "单体伤害",
|
||||
"name": "基础概率",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.75,
|
||||
@ -95,7 +95,7 @@
|
||||
]
|
||||
},
|
||||
"2": {
|
||||
"name": "基础概率",
|
||||
"name": "全属性抗性降低",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.075,
|
||||
@ -116,7 +116,7 @@
|
||||
]
|
||||
},
|
||||
"3": {
|
||||
"name": "伤害抗性降低",
|
||||
"name": "技能伤害",
|
||||
"isSame": false,
|
||||
"values": [
|
||||
0.98,
|
||||
|
@ -2,18 +2,33 @@ export const details = [{
|
||||
check: ({ cons }) => cons < 2,
|
||||
dmgKey: 'e',
|
||||
title: '叄阶杀生樱伤害',
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e')
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 2,
|
||||
dmgKey: 'e',
|
||||
title: '肆阶杀生樱伤害',
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e')
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e')
|
||||
}, {
|
||||
title: 'Q天狐霆雷伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['天狐霆雷伤害'], 'q')
|
||||
check: ({ cons }) => cons < 2,
|
||||
title: '叄阶杀生樱激化伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e', 'aggravate')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 2,
|
||||
title: '肆阶杀生樱激化伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e', 'aggravate')
|
||||
}, {
|
||||
title: '四段Q总伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'] + talent.q['天狐霆雷伤害'] * 3, 'q')
|
||||
}, {
|
||||
title: '四段Q总激化伤害',
|
||||
dmg: ({ talent }, dmg) => {
|
||||
let q1j = dmg(talent.q['技能伤害'], 'q', '超激化')
|
||||
let q2j = dmg(talent.q['天狐霆雷伤害'], 'q', '超激化')
|
||||
return {
|
||||
dmg: q1j.dmg + q2j.dmg * 3,
|
||||
avg: q1j.avg + q2j.avg * 3
|
||||
}
|
||||
}
|
||||
}]
|
||||
|
||||
export const mainAttr = 'atk,cpct,cdmg,mastery'
|
||||
|
@ -2,49 +2,70 @@ export const details = [{
|
||||
check: ({ cons }) => cons < 2,
|
||||
dmgKey: 'e',
|
||||
title: '叄阶杀生樱伤害',
|
||||
params: { team: false ,team2: false},
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e')
|
||||
params: { team: false, team2: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 2,
|
||||
dmgKey: 'e',
|
||||
title: '肆阶杀生樱伤害',
|
||||
params: { team: false ,team2: false},
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e')
|
||||
},{
|
||||
params: { team: false, team2: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e')
|
||||
}, {
|
||||
check: ({ cons }) => cons < 2,
|
||||
title: '叄阶杀生樱激化伤害',
|
||||
params: { team: false, team2: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e', '超激化')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 2,
|
||||
title: '肆阶杀生樱激化伤害',
|
||||
params: { team: false, team2: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e', '超激化')
|
||||
}, {
|
||||
check: ({ cons }) => cons < 2,
|
||||
dmgKey: 'e_t',
|
||||
params: { team: true ,team2: false},
|
||||
params: { team: true, team2: false },
|
||||
title: '温三雷叄阶杀生樱伤害',
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e')
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 2,
|
||||
dmgKey: 'e_t',
|
||||
params: { team: true ,team2: false},
|
||||
params: { team: true, team2: false },
|
||||
title: '温三雷肆阶杀生樱伤害',
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e')
|
||||
}, {
|
||||
title: 'Q天狐霆雷伤害',
|
||||
params: { team: false ,team2: false},
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['天狐霆雷伤害'], 'q')
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e')
|
||||
}, {
|
||||
title: '四段Q总伤害',
|
||||
params: { team: false, team2: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'] + talent.q['天狐霆雷伤害'] * 3, 'q')
|
||||
}, {
|
||||
title: '四段Q总激化伤害',
|
||||
params: { team: false, team2: false },
|
||||
dmg: ({ talent }, dmg) => {
|
||||
let q1j = dmg(talent.q['技能伤害'], 'q', '超激化')
|
||||
let q2j = dmg(talent.q['天狐霆雷伤害'], 'q', '超激化')
|
||||
return {
|
||||
dmg: q1j.dmg + q2j.dmg * 3,
|
||||
avg: q1j.avg + q2j.avg * 3
|
||||
}
|
||||
}
|
||||
}, {
|
||||
title: '温三雷四段Q总伤害',
|
||||
params: { team: true ,team2: false},
|
||||
params: { team: true, team2: false },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'] + talent.q['天狐霆雷伤害'] * 3, 'q')
|
||||
},{
|
||||
}, {
|
||||
check: ({ cons }) => cons < 2,
|
||||
dmgKey: 'e_j',
|
||||
params: { team: false,team2: true },
|
||||
params: { team: false, team2: true },
|
||||
title: '提八纳万叄阶杀生樱激化伤害',
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e', '超激化')
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·叁阶'], 'e', '超激化')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 2,
|
||||
dmgKey: 'e_j',
|
||||
params: { team: false,team2: true },
|
||||
params: { team: false, team2: true },
|
||||
title: '提八纳万肆阶杀生樱激化伤害',
|
||||
dmg: ({ talent, attr }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e', '超激化')
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['杀生樱伤害·肆阶'], 'e', '超激化')
|
||||
}, {
|
||||
title: '提八纳万四段Q总伤害',
|
||||
params: { team: false,team2: true },
|
||||
params: { team: false, team2: true },
|
||||
dmg: ({ talent }, dmg) => {
|
||||
let q1j = dmg(talent.q['技能伤害'], 'q', '超激化')
|
||||
let q2j = dmg(talent.q['天狐霆雷伤害'], 'q', '超激化')
|
||||
@ -59,10 +80,9 @@ export const mainAttr = 'atk,cpct,cdmg,mastery'
|
||||
export const defDmgKey = 'e_j'
|
||||
|
||||
export const defParams = {
|
||||
team:true,team2:true
|
||||
team: true, team2: true
|
||||
}
|
||||
|
||||
|
||||
export const buffs = [{
|
||||
check: ({ cons }) => cons >= 4,
|
||||
title: '4命效果:杀生樱命中敌人后提高雷伤[dmg]%',
|
||||
@ -75,82 +95,94 @@ export const buffs = [{
|
||||
data: {
|
||||
eDef: 60
|
||||
}
|
||||
}, {check: ({ cons,params }) => (cons >= 6 && params.team === true),
|
||||
title: '精5终末6命温迪:增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
atkPct:40,
|
||||
kx:60,
|
||||
mastery:200
|
||||
}
|
||||
}, {check: ({ cons,params }) => (cons < 6 && cons >1 && params.team === true),
|
||||
title: '精1终末0命温迪:增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
atkPct:20,
|
||||
kx:40,
|
||||
mastery:100
|
||||
}
|
||||
}, {check: ({ params }) => params.team === true,
|
||||
title: '天空宗室九条:增加[atkPlus]点攻击力,[atkPct]%攻击与[cdmg]%爆伤',
|
||||
data: {
|
||||
atkPlus: 794.2,
|
||||
atkPct:20,
|
||||
cdmg:60
|
||||
}
|
||||
}, {check: ({ cons,params }) => (cons >= 2&&cons < 6&& params.team2 === true),
|
||||
title: '精1千夜纳西妲提纳里:增加精通[mastery](包括双草),减防[enemyDef]%',
|
||||
data: {
|
||||
mastery: 140,
|
||||
enemyDef: 30,
|
||||
}
|
||||
}, {check: ({ cons,params }) => (cons >= 6&& params.team2 === true),
|
||||
title: '精5千夜纳西妲提纳里:增加精通[mastery](包括双草),减防[enemyDef](折合效果)%',
|
||||
data: {
|
||||
mastery: 268,
|
||||
enemyDef: 12,
|
||||
}
|
||||
}, {check: ({ cons,params }) => (cons < 2&& params.team2 === true),
|
||||
title: '精1千夜草套纳西妲提纳里:增加精通[mastery](包括双草)',
|
||||
data: {
|
||||
mastery: 140
|
||||
}
|
||||
}, {check: ({ cons,params }) => cons <= 1 && params.team2 === true,
|
||||
title: '精1苍古0命万叶:获得[dmg]%增伤(苍古普攻16增伤),增加[atkPct]%攻击,减抗[kx]%',
|
||||
data: {
|
||||
aDmg:16,
|
||||
a2Dmg:16,
|
||||
a3Dmg:16,
|
||||
dmg: 40,
|
||||
atkPct:20,
|
||||
kx:40,
|
||||
}
|
||||
}, {check: ({ cons,params }) => ((cons < 6 && cons >1) && params.team2 === true),
|
||||
title: '精1苍古2命万叶:获得[dmg]%增伤(苍古普攻16增伤),增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
aDmg:16,
|
||||
a2Dmg:16,
|
||||
a3Dmg:16,
|
||||
dmg: 48,
|
||||
atkPct:20,
|
||||
kx:40,
|
||||
}
|
||||
}, {check: ({ cons,params }) => (cons >= 6 && params.team2 === true),
|
||||
title: '精5苍古6命万叶:获得[dmg]%增伤(苍古普攻32增伤),增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
aDmg:32,
|
||||
a2Dmg:32,
|
||||
a3Dmg:32,
|
||||
dmg: 48,
|
||||
atkPct:40,
|
||||
kx:40,
|
||||
}
|
||||
},{
|
||||
}, {
|
||||
check: ({ cons, params }) => (cons >= 6 && params.team === true),
|
||||
title: '精5终末6命温迪:增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
atkPct: 40,
|
||||
kx: 60,
|
||||
mastery: 200
|
||||
}
|
||||
}, {
|
||||
check: ({ cons, params }) => (cons < 6 && cons > 1 && params.team === true),
|
||||
title: '精1终末0命温迪:增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
atkPct: 20,
|
||||
kx: 40,
|
||||
mastery: 100
|
||||
}
|
||||
}, {
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '天空宗室九条:增加[atkPlus]点攻击力,[atkPct]%攻击与[cdmg]%爆伤',
|
||||
data: {
|
||||
atkPlus: 794.2,
|
||||
atkPct: 20,
|
||||
cdmg: 60
|
||||
}
|
||||
}, {
|
||||
check: ({ cons, params }) => (cons >= 2 && cons < 6 && params.team2 === true),
|
||||
title: '精1千夜纳西妲提纳里:增加精通[mastery](包括双草),减防[enemyDef]%',
|
||||
data: {
|
||||
mastery: 140,
|
||||
enemyDef: 30
|
||||
}
|
||||
}, {
|
||||
check: ({ cons, params }) => (cons >= 6 && params.team2 === true),
|
||||
title: '精5千夜纳西妲提纳里:增加精通[mastery](包括双草),减防[enemyDef](折合效果)%',
|
||||
data: {
|
||||
mastery: 268,
|
||||
enemyDef: 12
|
||||
}
|
||||
}, {
|
||||
check: ({ cons, params }) => (cons < 2 && params.team2 === true),
|
||||
title: '精1千夜草套纳西妲提纳里:增加精通[mastery](包括双草)',
|
||||
data: {
|
||||
mastery: 140
|
||||
}
|
||||
}, {
|
||||
check: ({ cons, params }) => cons <= 1 && params.team2 === true,
|
||||
title: '精1苍古0命万叶:获得[dmg]%增伤(苍古普攻16增伤),增加[atkPct]%攻击,减抗[kx]%',
|
||||
data: {
|
||||
aDmg: 16,
|
||||
a2Dmg: 16,
|
||||
a3Dmg: 16,
|
||||
dmg: 40,
|
||||
atkPct: 20,
|
||||
kx: 40
|
||||
}
|
||||
}, {
|
||||
check: ({ cons, params }) => ((cons < 6 && cons > 1) && params.team2 === true),
|
||||
title: '精1苍古2命万叶:获得[dmg]%增伤(苍古普攻16增伤),增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
aDmg: 16,
|
||||
a2Dmg: 16,
|
||||
a3Dmg: 16,
|
||||
dmg: 48,
|
||||
atkPct: 20,
|
||||
kx: 40,
|
||||
mastery: 200
|
||||
}
|
||||
}, {
|
||||
check: ({ cons, params }) => (cons >= 6 && params.team2 === true),
|
||||
title: '精5苍古6命万叶:获得[dmg]%增伤(苍古普攻32增伤),增加[atkPct]%攻击,减抗[kx]%,精通[mastery]',
|
||||
data: {
|
||||
aDmg: 32,
|
||||
a2Dmg: 32,
|
||||
a3Dmg: 32,
|
||||
dmg: 48,
|
||||
atkPct: 40,
|
||||
kx: 40,
|
||||
mastery: 200
|
||||
}
|
||||
}, {
|
||||
title: '被动天赋:基于元素精通提高杀生樱伤害[eDmg]%',
|
||||
data: {
|
||||
eDmg: ({ attr, calc }) => calc(attr.mastery) * 0.15
|
||||
}
|
||||
}, {check: ({ params }) => params.team === true,
|
||||
title: '恶曜开眼:开E元素爆发伤害提升[qDmg]%',
|
||||
data: {
|
||||
qDmg: 27
|
||||
}
|
||||
}]
|
||||
}, {
|
||||
check: ({ params }) => params.team === true,
|
||||
title: '恶曜开眼:开E元素爆发伤害提升[qDmg]%',
|
||||
data: {
|
||||
qDmg: 27
|
||||
}
|
||||
}]
|
||||
|
@ -20,7 +20,7 @@ export const buffs = [{
|
||||
shieldPlus: ({ params }) => params.e ? 25 : 0
|
||||
}
|
||||
}, {
|
||||
title: '托马被动:Q每段伤害提高[ePlus]',
|
||||
title: '托马被动:Q每段伤害提高[qPlus]',
|
||||
data: {
|
||||
qPlus: ({ calc, attr }) => calc(attr.hp) * 0.022
|
||||
}
|
||||
|
@ -8,6 +8,13 @@ export const details = [{
|
||||
}, {
|
||||
title: 'E减抗后Q伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['技能伤害'], 'q')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 6,
|
||||
title: '开Q后E后台伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['风压坍陷风涡伤害'], 'e')
|
||||
}, {
|
||||
title: '开Q后飓烈箭伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.a['满蓄力瞄准射击'], 'a2')
|
||||
}]
|
||||
|
||||
export const defDmgIdx = 1
|
||||
@ -22,7 +29,7 @@ export const buffs = [{
|
||||
}, {
|
||||
title: '诡风之祸:降低敌人风抗[kx]%',
|
||||
data: {
|
||||
kx: ({ talent }) => talent.q['风元素抗性降低']
|
||||
kx: 30
|
||||
}
|
||||
}, {
|
||||
title: '祈风之赐:获得风伤加成[dmg]%',
|
||||
|
@ -12,8 +12,36 @@ export const details = [{
|
||||
}, {
|
||||
title: 'Q每跳护盾吸收量',
|
||||
dmg: ({ talent, calc, attr }, { shield }) => shield(talent.q['无郤气护盾吸收量2'][0] * calc(attr.hp) / 100 + talent.q['无郤气护盾吸收量2'][1])
|
||||
}, {
|
||||
check: ({ cons }) => cons < 6,
|
||||
title: 'Q每跳伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['灵气脉技能伤害'], 'q')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 6,
|
||||
title: 'Q每跳伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['灵气脉技能伤害'], 'q')
|
||||
}, {
|
||||
check: ({ cons }) => cons < 6,
|
||||
title: 'Q每跳激化伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['灵气脉技能伤害'], 'q', 'spread')
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 6,
|
||||
title: 'Q每跳激化伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['灵气脉技能伤害'], 'q', 'spread')
|
||||
}]
|
||||
|
||||
export const mainAttr = 'atk,hp,cpct,cdmg'
|
||||
|
||||
export const buffs = []
|
||||
export const buffs = [{
|
||||
cons: 4,
|
||||
title: '白术4命:释放Q之后,队伍中附近所有角色元素精通提升80点',
|
||||
data: {
|
||||
mastery: 80
|
||||
}
|
||||
}, {
|
||||
cons: 6,
|
||||
title: '白术6命:基于生命值上限的8%,灵气脉造成的伤害提高[qPlus]',
|
||||
data: {
|
||||
qPlus: ({ attr, calc }) => calc(attr.hp) * 0.08
|
||||
}
|
||||
}]
|
||||
|
@ -1,60 +1,108 @@
|
||||
/*
|
||||
* q: 1 - Q状态,a伤害
|
||||
* q: 2 - Q状态,E伤害
|
||||
* q: 3 - Q状态,冥祭
|
||||
* q: 4 - Q状态,炮弹
|
||||
* */
|
||||
let eDmg = false
|
||||
let eAggrDmg = false
|
||||
let eAllDmg = false
|
||||
let ePlusDmg = false
|
||||
let ePlusAggrDmg = false
|
||||
|
||||
export const details = [{
|
||||
title: 'Q状态普攻首段',
|
||||
params: { q: 1 },
|
||||
title: 'Q状态·普攻首段',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.q['一段伤害'], 'a')
|
||||
}, {
|
||||
title: 'Q状态 E伤害',
|
||||
params: { q: 2 },
|
||||
title: 'Q状态·E伤害',
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['冥祭伤害'], 'e')
|
||||
}, {
|
||||
title: 'Q+末途真眼 E伤害',
|
||||
params: { q: 3 },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['冥祭伤害'], 'e')
|
||||
}, {
|
||||
title: 'Q后强化E·超激化',
|
||||
params: { q: 3 },
|
||||
dmg: ({ talent }, dmg) => dmg(talent.e['冥祭伤害'], 'e', '超激化')
|
||||
}/*, {
|
||||
|
||||
title: 'Q+末途真眼 渡荒之雷',
|
||||
params: { q: 4 },
|
||||
dmg: ({ talent }, dmg) => dmg(100, 'e')
|
||||
}*/]
|
||||
|
||||
export const defDmgIdx = 3
|
||||
export const mainAttr = 'atk,cpct,cdmg,mastery'
|
||||
export const defParams = { q: 3 }
|
||||
|
||||
export const buffs = [{
|
||||
title: '赛诺Q:Q状态下提升元素精通100点',
|
||||
data: {
|
||||
mastery: ({ params }) => params.q ? 100 : 0
|
||||
title: 'Q状态·强化E伤害',
|
||||
params: { showEBuff: true, eBuff: true },
|
||||
dmg: ({ talent }, dmg) => {
|
||||
eDmg = dmg(talent.e['冥祭伤害'], 'e')
|
||||
eAggrDmg = dmg(talent.e['冥祭伤害'], 'e', 'aggravate')
|
||||
return eDmg
|
||||
}
|
||||
}, {
|
||||
// 普攻提升雷伤
|
||||
title: '赛诺2命:普攻提高雷伤,5层增加50%',
|
||||
title: 'Q状态·QTE总伤害',
|
||||
params: { showEBuff: true },
|
||||
dmg: ({ attr, calc }, { basic }) => {
|
||||
const em = calc(attr.mastery)
|
||||
const atk = calc(attr.atk)
|
||||
const ePlustd = 1.00 * atk + em * 2.5
|
||||
ePlusDmg = basic(ePlustd, 'e')
|
||||
return {
|
||||
dmg: eDmg.dmg + ePlusDmg.dmg * 3,
|
||||
avg: eDmg.avg + ePlusDmg.avg * 3
|
||||
}
|
||||
}
|
||||
}, {
|
||||
title: 'Q状态·QTE超激化总伤害',
|
||||
params: { showEBuff: true },
|
||||
dmg: ({ attr, calc }, { basic }) => {
|
||||
const em = calc(attr.mastery)
|
||||
const atk = calc(attr.atk)
|
||||
const ePlustd = 1.00 * atk + em * 2.5
|
||||
ePlusAggrDmg = basic(ePlustd, 'e', 'aggravate')
|
||||
eAllDmg = {
|
||||
dmg: eAggrDmg.dmg + ePlusAggrDmg.dmg + ePlusDmg.dmg * 2,
|
||||
avg: eAggrDmg.avg + ePlusAggrDmg.avg + ePlusDmg.avg * 2
|
||||
}
|
||||
return eAllDmg
|
||||
}
|
||||
}, {
|
||||
check: ({ cons }) => cons < 6,
|
||||
title: 'Q状态·一轮普攻5A+QTE超激化总伤害',
|
||||
params: { showEBuff: true },
|
||||
dmg: ({ talent }, dmg) => {
|
||||
let a1Aggrdmg = dmg(talent.q['一段伤害'], 'a', 'aggravate')
|
||||
let a2dmg = dmg(talent.q['二段伤害'], 'a')
|
||||
let a3dmg = dmg(talent.q['三段伤害'], 'a')
|
||||
let a4Aggrdmg = dmg(talent.q['四段伤害2'][0], 'a', 'aggravate')
|
||||
let a4dmg = dmg(talent.q['四段伤害2'][1], 'a')
|
||||
let a5dmg = dmg(talent.q['五段伤害'], 'a')
|
||||
return {
|
||||
dmg: eAllDmg.dmg + a1Aggrdmg.dmg + a2dmg.dmg + a3dmg.dmg + a4Aggrdmg.dmg + a4dmg.dmg + a5dmg.dmg,
|
||||
avg: eAllDmg.avg + a1Aggrdmg.avg + a2dmg.avg + a3dmg.avg + a4Aggrdmg.avg + a4dmg.avg + a5dmg.avg
|
||||
}
|
||||
}
|
||||
}, {
|
||||
check: ({ cons }) => cons >= 6,
|
||||
title: 'Q状态·一轮普攻5A+QTE超激化总伤害(消耗4层豺祭)',
|
||||
params: { showEBuff: true },
|
||||
dmg: ({ talent }, dmg) => {
|
||||
let a1Aggrdmg = dmg(talent.q['一段伤害'], 'a', 'aggravate')
|
||||
let a2dmg = dmg(talent.q['二段伤害'], 'a')
|
||||
let a3dmg = dmg(talent.q['三段伤害'], 'a')
|
||||
let a4Aggrdmg = dmg(talent.q['四段伤害2'][0], 'a', 'aggravate')
|
||||
let a4dmg = dmg(talent.q['四段伤害2'][1], 'a')
|
||||
let a5dmg = dmg(talent.q['五段伤害'], 'a')
|
||||
return {
|
||||
dmg: eAllDmg.dmg + a1Aggrdmg.dmg + a2dmg.dmg + a3dmg.dmg + a4Aggrdmg.dmg + a4dmg.dmg + a5dmg.dmg + ePlusDmg.dmg * 3 + ePlusAggrDmg.dmg,
|
||||
avg: eAllDmg.avg + a1Aggrdmg.avg + a2dmg.avg + a3dmg.avg + a4Aggrdmg.avg + a4dmg.avg + a5dmg.avg + ePlusDmg.avg * 3 + ePlusAggrDmg.avg
|
||||
}
|
||||
}
|
||||
}]
|
||||
|
||||
export const defDmgIdx = 5
|
||||
export const mainAttr = 'atk,cpct,cdmg,mastery'
|
||||
|
||||
export const buffs = [{
|
||||
title: '圣仪·煟煌随狼行:Q状态下提升元素精通100点',
|
||||
data: {
|
||||
mastery: 100
|
||||
}
|
||||
}, {
|
||||
title: '赛诺2命:普攻后提高雷伤,满5层Buff增加50%雷元素伤害',
|
||||
cons: 2,
|
||||
data: {
|
||||
dmg: 50
|
||||
}
|
||||
}, {
|
||||
title: '赛诺被动:末途真眼状态提升E 35%伤害,发射渡荒之雷造成100%攻击力伤害',
|
||||
check: ({ params }) => params.showEBuff === true,
|
||||
title: '赛诺被动:末途真眼状态提升秘仪·律渊渡魂35%伤害,发射渡荒之雷造成100%攻击力伤害',
|
||||
data: {
|
||||
eDmg: ({ params }) => [3, 4].includes(params.q) ? 35 : 0
|
||||
eDmg: ({ params }) => params.eBuff ? 35 : 0
|
||||
}
|
||||
}, {
|
||||
title: '赛诺被动:基于元素精通提升普攻[_aPlus]点伤害值,渡荒之雷提升[_ePlus]伤害值',
|
||||
title: '赛诺被动:基于元素精通提升普攻[aPlus]点伤害值,渡荒之雷提升[_ePlus]伤害值',
|
||||
data: {
|
||||
aPlus: ({ attr, calc, params }) => params.q === 1 ? calc(attr.mastery) * 1.5 : 0,
|
||||
_aPlus: ({ attr, calc, params }) => calc(attr.mastery) * 1.5,
|
||||
ePlus: ({ attr, calc, params }) => params.q === 4 ? calc(attr.mastery) / 2.5 : 0,
|
||||
_ePlus: ({ attr, calc, params }) => calc(attr.mastery) / 2.5
|
||||
aPlus: ({ attr, calc }) => calc(attr.mastery) * 1.5,
|
||||
_ePlus: ({ attr, calc }) => calc(attr.mastery) * 2.5
|
||||
}
|
||||
}/*, 'aggravate'*/]
|
||||
}]
|
||||
|
Loading…
Reference in New Issue
Block a user