Merge pull request #64 from lin-junliang/lin-junliang-patch-3

新增猫又、安东伤害计算
This commit is contained in:
bietiaop 2024-08-23 18:02:55 +08:00 committed by GitHub
commit 71f514815f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -381,7 +381,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算伤害 */ /** 计算伤害 */
/** 计算普攻伤害 */ /** 计算普攻伤害 */
const skill_multiplier1 = getskilllevelnum(data.id,data.skills,'A','A'); const skill_multiplier1 = getskilllevelnum(data.id,data.skills,'A','A');
const damagelist1 = calculate_damage(base_detail,bonus_detail,'A','A','Ether',skill_multiplier1,data.level); const damagelist1 = calculate_damage(base_detail,bonus_detail,'A','A','Fire',skill_multiplier1,data.level);
const damage1 = { const damage1 = {
title: '普通攻击:火力镇压', title: '普通攻击:火力镇压',
value: damagelist1, value: damagelist1,
@ -390,7 +390,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算冲刺伤害 */ /** 计算冲刺伤害 */
const skill_multiplier2 = getskilllevelnum(data.id,data.skills,'C','C'); const skill_multiplier2 = getskilllevelnum(data.id,data.skills,'C','C');
const damagelist2 = calculate_damage(base_detail,bonus_detail,'C','C','Ether',skill_multiplier2,data.level); const damagelist2 = calculate_damage(base_detail,bonus_detail,'C','C','Fire',skill_multiplier2,data.level);
const damage2 = { const damage2 = {
title: '闪避反击:逆火', title: '闪避反击:逆火',
value: damagelist2, value: damagelist2,
@ -399,7 +399,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算强化特殊技伤害 */ /** 计算强化特殊技伤害 */
const skill_multiplier3 = getskilllevelnum(data.id,data.skills,'E','E'); const skill_multiplier3 = getskilllevelnum(data.id,data.skills,'E','E');
let damagelist3 = calculate_damage(base_detail,bonus_detail,'E','E','Ether',skill_multiplier3,data.level); let damagelist3 = calculate_damage(base_detail,bonus_detail,'E','E','Fire',skill_multiplier3,data.level);
const damage3 = { const damage3 = {
title: '强化特殊技:盛燃烈火', title: '强化特殊技:盛燃烈火',
value: damagelist3, value: damagelist3,
@ -408,7 +408,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算连携技伤害 */ /** 计算连携技伤害 */
const skill_multiplier4 = getskilllevelnum(data.id,data.skills,'L','L'); const skill_multiplier4 = getskilllevelnum(data.id,data.skills,'L','L');
const damagelist4 = calculate_damage(base_detail,bonus_detail,'L','L','Ether',skill_multiplier4,data.level); const damagelist4 = calculate_damage(base_detail,bonus_detail,'L','L','Fire',skill_multiplier4,data.level);
const damage4 = { const damage4 = {
title: '连携技:昂扬烈焰', title: '连携技:昂扬烈焰',
value: damagelist4, value: damagelist4,
@ -417,7 +417,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算终结技伤害 */ /** 计算终结技伤害 */
const skill_multiplier5 = getskilllevelnum(data.id,data.skills,'R','R'); const skill_multiplier5 = getskilllevelnum(data.id,data.skills,'R','R');
const damagelist5 = calculate_damage(base_detail,bonus_detail,'R','R','Ether',skill_multiplier5,data.level); const damagelist5 = calculate_damage(base_detail,bonus_detail,'R','R','Fire',skill_multiplier5,data.level);
const damage5 = { const damage5 = {
title: '终结技:轰鸣烈焰', title: '终结技:轰鸣烈焰',
value: damagelist5, value: damagelist5,
@ -463,7 +463,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算伤害 */ /** 计算伤害 */
/** 计算普攻伤害 */ /** 计算普攻伤害 */
const skill_multiplier1 = getskilllevelnum(data.id,data.skills,'A','A'); const skill_multiplier1 = getskilllevelnum(data.id,data.skills,'A','A');
const damagelist1 = calculate_damage(base_detail,bonus_detail,'A','A','Ether',skill_multiplier1,data.level); const damagelist1 = calculate_damage(base_detail,bonus_detail,'A','A','Electric',skill_multiplier1,data.level);
const damage1 = { const damage1 = {
title: '普通攻击:醉花月云转', title: '普通攻击:醉花月云转',
value: damagelist1, value: damagelist1,
@ -472,7 +472,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算冲刺伤害 */ /** 计算冲刺伤害 */
const skill_multiplier2 = getskilllevelnum(data.id,data.skills,'C','C'); const skill_multiplier2 = getskilllevelnum(data.id,data.skills,'C','C');
const damagelist2 = calculate_damage(base_detail,bonus_detail,'C','C','Ether',skill_multiplier2,data.level); const damagelist2 = calculate_damage(base_detail,bonus_detail,'C','C','Electric',skill_multiplier2,data.level);
const damage2 = { const damage2 = {
title: '闪避反击:意不尽', title: '闪避反击:意不尽',
value: damagelist2, value: damagelist2,
@ -490,7 +490,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算连携技伤害 */ /** 计算连携技伤害 */
const skill_multiplier4 = getskilllevelnum(data.id,data.skills,'L','L'); const skill_multiplier4 = getskilllevelnum(data.id,data.skills,'L','L');
const damagelist4 = calculate_damage(base_detail,bonus_detail,'L','L','Ether',skill_multiplier4,data.level); const damagelist4 = calculate_damage(base_detail,bonus_detail,'L','L','Electric',skill_multiplier4,data.level);
const damage4 = { const damage4 = {
title: '连携技:太平令', title: '连携技:太平令',
value: damagelist4, value: damagelist4,
@ -499,7 +499,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
/** 计算终结技伤害 */ /** 计算终结技伤害 */
const skill_multiplier5 = getskilllevelnum(data.id,data.skills,'R','R'); const skill_multiplier5 = getskilllevelnum(data.id,data.skills,'R','R');
const damagelist5 = calculate_damage(base_detail,bonus_detail,'R','R','Ether',skill_multiplier5,data.level); const damagelist5 = calculate_damage(base_detail,bonus_detail,'R','R','Electric',skill_multiplier5,data.level);
const damage5 = { const damage5 = {
title: '终结技:八声甘州', title: '终结技:八声甘州',
value: damagelist5, value: damagelist5,
@ -507,6 +507,153 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
damagelist.push(damage5); damagelist.push(damage5);
break; break;
} }
case 1021: {
/** 处理命座加成 */
if (data.rank >= 1) {
let Physical_ResistancePenetration = _.get(bonus_detail, 'Physical_ResistancePenetration', 0);
bonus_detail['Physical_ResistancePenetration'] = Physical_ResistancePenetration + 0.16;
}
if (data.rank >= 4) {
let CriticalChanceBase = _.get(bonus_detail, 'CriticalChanceBase', 0);
bonus_detail['CriticalChanceBase'] = CriticalChanceBase * 0.14;
}
if (data.rank >= 6) {
let CriticalDamageBase = _.get(bonus_detail, 'CriticalDamageBase', 0);
bonus_detail['CriticalDamageBase'] = CriticalDamageBase + 0.54;
}
/** 处理天赋加成 */
/** 获取天赋等级与加成倍率 */
const TF = getskilllevelnum(data.id, data.skills, 'T', 'T');
let DmgAdd = _.get(bonus_detail, 'DmgAdd', 0);
bonus_detail['DmgAdd'] = DmgAdd + TF;
let E_DmgAdd = _.get(bonus_detail, 'E_DmgAdd', 0);
bonus_detail['E_DmgAdd'] = E_DmgAdd + 0.7;
/** 计算伤害 */
/** 计算普攻伤害 */
const skill_multiplier1 = getskilllevelnum(data.id,data.skills,'A','A');
const damagelist1 = calculate_damage(base_detail,bonus_detail,'A','A','Physical',skill_multiplier1,data.level);
const damage1 = {
title: '普通攻击:猫猫爪刺',
value: damagelist1,
};
damagelist.push(damage1);
/** 计算冲刺伤害 */
const skill_multiplier2 = getskilllevelnum(data.id,data.skills,'C','C');
const damagelist2 = calculate_damage(base_detail,bonus_detail,'C','C','Physical',skill_multiplier2,data.level);
const damage2 = {
title: '闪避反击:虚影双刺',
value: damagelist2,
};
damagelist.push(damage2);
/** 计算强化特殊技伤害 */
const skill_multiplier3 = getskilllevelnum(data.id,data.skills,'E','E');
let damagelist3 = calculate_damage(base_detail,bonus_detail,'E','E','Physical',skill_multiplier3,data.level);
const damage3 = {
title: '强化特殊技:超~凶奇袭!',
value: damagelist3,
};
damagelist.push(damage3);
/** 计算连携技伤害 */
const skill_multiplier4 = getskilllevelnum(data.id,data.skills,'L','L');
const damagelist4 = calculate_damage(base_detail,bonus_detail,'L','L','Physical',skill_multiplier4,data.level);
const damage4 = {
title: '连携技:刃爪挥击',
value: damagelist4,
};
damagelist.push(damage4);
/** 计算终结技伤害 */
const skill_multiplier5 = getskilllevelnum(data.id,data.skills,'R','R');
const damagelist5 = calculate_damage(base_detail,bonus_detail,'R','R','Physical',skill_multiplier5,data.level);
const damage5 = {
title: '终结技:刃爪强袭',
value: damagelist5,
};
damagelist.push(damage5);
break;
}
case 1111: {
/** 处理命座加成 */
if (data.rank >= 4) {
let CriticalChanceBase = _.get(bonus_detail, 'CriticalChanceBase', 0);
bonus_detail['CriticalChanceBase'] = CriticalChanceBase + 0.1;
}
if (data.rank >= 6) {
let A_DmgAdd = _.get(bonus_detail, 'A_DmgAdd', 0);
bonus_detail['A_DmgAdd'] = A_DmgAdd + 0.24;
let C_DmgAdd = _.get(bonus_detail, 'C_DmgAdd', 0);
bonus_detail['C_DmgAdd'] = C_DmgAdd + 0.24;
}
/** 处理天赋加成 */
/** 获取天赋等级与加成倍率 */
const TF = getskilllevelnum(data.id, data.skills, 'T', 'T');
const TF2 = getskilllevelnum(data.id, data.skills, 'T', 'T2');
let A_DmgAdd = _.get(bonus_detail, 'A_DmgAdd', 0);
bonus_detail['A_DmgAdd'] = A_DmgAdd + TF2;
let C_DmgAdd = _.get(bonus_detail, 'C_DmgAdd', 0);
bonus_detail['C_DmgAdd'] = C_DmgAdd + TF2;
let E_DmgAdd = _.get(bonus_detail, 'E_DmgAdd', 0);
bonus_detail['E_DmgAdd'] = E_DmgAdd + TF;
let L_DmgAdd = _.get(bonus_detail, 'L_DmgAdd', 0);
bonus_detail['L_DmgAdd'] = L_DmgAdd + TF;
let R_DmgAdd = _.get(bonus_detail, 'R_DmgAdd', 0);
bonus_detail['R_DmgAdd'] = R_DmgAdd + TF;
/** 计算伤害 */
/** 计算普攻伤害 */
const skill_multiplier1 = getskilllevelnum(data.id,data.skills,'A','A');
const damagelist1 = calculate_damage(base_detail,bonus_detail,'A','A','Electric',skill_multiplier1,data.level);
const damage1 = {
title: '普通攻击:热血上工操',
value: damagelist1,
};
damagelist.push(damage1);
/** 计算冲刺伤害 */
const skill_multiplier2 = getskilllevelnum(data.id,data.skills,'C','C');
const damagelist2 = calculate_damage(base_detail,bonus_detail,'C','C','Electric',skill_multiplier2,data.level);
const damage2 = {
title: '闪避反击:过载钻击',
value: damagelist2,
};
damagelist.push(damage2);
/** 计算强化特殊技伤害 */
const skill_multiplier3 = getskilllevelnum(data.id,data.skills,'E','E');
let damagelist3 = calculate_damage(base_detail,bonus_detail,'E','E','Electric',skill_multiplier3,data.level);
const damage3 = {
title: '特殊技:爆发钻击',
value: damagelist3,
};
damagelist.push(damage3);
/** 计算连携技伤害 */
const skill_multiplier4 = getskilllevelnum(data.id,data.skills,'L','L');
const damagelist4 = calculate_damage(base_detail,bonus_detail,'L','L','Electric',skill_multiplier4,data.level);
const damage4 = {
title: '连携技:转转转!',
value: damagelist4,
};
damagelist.push(damage4);
/** 计算终结技伤害 */
const skill_multiplier5 = getskilllevelnum(data.id,data.skills,'R','R');
const damagelist5 = calculate_damage(base_detail,bonus_detail,'R','R','Electric',skill_multiplier5,data.level);
const damage5 = {
title: '终结技:转转转转转!',
value: damagelist5,
};
damagelist.push(damage5);
break;
}
} }
return damagelist; return damagelist;
}; };