mirror of
https://github.com/yoimiya-kokomi/miao-plugin.git
synced 2024-11-24 09:15:14 +00:00
伤害计算支持超击破伤害
This commit is contained in:
parent
0c22316bda
commit
194080acfc
@ -205,10 +205,13 @@ let DmgCalc = {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
// 未计算层数(风化、纠缠)和韧性条系数(击破、纠缠)
|
// 未计算:1. 层数(风化、纠缠) 2. 韧性条系数(击破、纠缠) 3. 削韧值(超击破)、超击破伤害提高
|
||||||
// 常规击破伤害均需要计算减伤区(即按韧性条存在处理) 特例:阮梅终结技/秘技击破伤害不计算减伤
|
// 常规击破伤害均需要计算减伤区(即按韧性条存在处理) 特例:阮梅终结技/秘技击破伤害不计算减伤
|
||||||
// 击破伤害 = 基础伤害 * 属性击破伤害系数 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * (敌方韧性+2)/4 * 层数系数
|
// 击破伤害 = 基础伤害 * 属性击破伤害系数 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * (敌方韧性+2)/4 * 层数系数
|
||||||
// 击破持续伤害 = 基础伤害 * 属性持续伤害系数 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * 层数系数
|
// 击破持续伤害 = 基础伤害 * 属性持续伤害系数 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * 层数系数
|
||||||
|
// 超击破伤害 = 基础伤害 * (1+击破特攻%) * 易伤区 * 防御区 * 抗性区 * 减伤区 * (1+超击破伤害提高) * 技能最终削韧值
|
||||||
|
// 技能最终削韧值 = 技能基础削韧值 ×(1+削韧值提高)×(1+弱点击破效率提高)
|
||||||
|
// 超击破伤害提高 截至2.2版本该乘区仅能由同谐开拓者提供,与常规增伤区无关,暂时只在calc.js中手动计算
|
||||||
case 'shock':
|
case 'shock':
|
||||||
case 'burn':
|
case 'burn':
|
||||||
case 'windShear':
|
case 'windShear':
|
||||||
@ -220,11 +223,12 @@ let DmgCalc = {
|
|||||||
case 'physicalBreak':
|
case 'physicalBreak':
|
||||||
case 'quantumBreak':
|
case 'quantumBreak':
|
||||||
case 'imaginaryBreak':
|
case 'imaginaryBreak':
|
||||||
case 'iceBreak': {
|
case 'iceBreak':
|
||||||
let breakDotBase = 1
|
case 'superBreak': {
|
||||||
breakDotBase *= breakBaseDmg[level]
|
let breakBase = 1
|
||||||
|
breakBase *= breakBaseDmg[level]
|
||||||
ret = {
|
ret = {
|
||||||
avg: breakDotBase * eleNum * stanceNum * enemydmgNum * defNum * kNum * dmgReduceNum
|
avg: breakBase * eleNum * stanceNum * enemydmgNum * defNum * kNum * dmgReduceNum
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@ -275,6 +279,7 @@ let DmgCalc = {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
// 击破伤害
|
// 击破伤害
|
||||||
|
case 'superBreak':
|
||||||
case 'lightningBreak':
|
case 'lightningBreak':
|
||||||
case 'fireBreak':
|
case 'fireBreak':
|
||||||
case 'windBreak':
|
case 'windBreak':
|
||||||
|
@ -34,7 +34,9 @@ export const erType = {
|
|||||||
physicalBreak: { type: 'break', num: () => 2.0, title: '物理击破' },
|
physicalBreak: { type: 'break', num: () => 2.0, title: '物理击破' },
|
||||||
quantumBreak: { type: 'break', num: () => 0.5, title: '量子击破' },
|
quantumBreak: { type: 'break', num: () => 0.5, title: '量子击破' },
|
||||||
imaginaryBreak: { type: 'break', num: () => 0.5, title: '虚数击破' },
|
imaginaryBreak: { type: 'break', num: () => 0.5, title: '虚数击破' },
|
||||||
iceBreak: { type: 'break', num: () => 1.0, title: '冰击破' }
|
iceBreak: { type: 'break', num: () => 1.0, title: '冰击破' },
|
||||||
|
// 超击破伤害
|
||||||
|
superBreak: { type: 'break', num: () => 1.0, title: '超击破' }
|
||||||
}
|
}
|
||||||
let erTmp = {}
|
let erTmp = {}
|
||||||
lodash.forEach(erType, (er, key) => {
|
lodash.forEach(erType, (er, key) => {
|
||||||
|
Loading…
Reference in New Issue
Block a user