diff --git a/model/damage/avatar.js b/model/damage/avatar.js index 65f7aed..4975d2e 100644 --- a/model/damage/avatar.js +++ b/model/damage/avatar.js @@ -381,7 +381,7 @@ export const avatar_ability = (data, base_detail, bonus_detail) => { /** 计算伤害 */ /** 计算普攻伤害 */ 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 = { title: '普通攻击:火力镇压', 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 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 = { title: '闪避反击:逆火', 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'); - 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 = { title: '强化特殊技:盛燃烈火', 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 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 = { title: '连携技:昂扬烈焰', 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 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 = { title: '终结技:轰鸣烈焰', 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 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 = { title: '普通攻击:醉花月云转', 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 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 = { title: '闪避反击:意不尽', 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 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 = { title: '连携技:太平令', 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 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 = { title: '终结技:八声甘州', value: damagelist5, @@ -507,6 +507,153 @@ export const avatar_ability = (data, base_detail, bonus_detail) => { damagelist.push(damage5); 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; };