fix:伤害计算连携技倍率错误

This commit is contained in:
UCPr 2025-01-06 02:07:09 +08:00
parent e307554fba
commit 548d9950f8
3 changed files with 33 additions and 33 deletions

View file

@ -409,8 +409,8 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
damagelist.push(damage3);
/** 计算连携技伤害 */
const skill_multiplier4 = getskilllevelnum(data.id, data.skills, 'L', 'L');
const damagelist4 = calculate_damage(base_detail, bonus_detail, 'L', 'L', 'Fire', skill_multiplier4, data.level);
const skill_multiplier4 = getskilllevelnum(data.id, data.skills, 'R', 'RL');
const damagelist4 = calculate_damage(base_detail, bonus_detail, 'RL', 'RL', 'Fire', skill_multiplier4, data.level);
const damage4 = {
title: '连携技:昂扬烈焰',
value: damagelist4,
@ -492,8 +492,8 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
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 skill_multiplier4 = getskilllevelnum(data.id, data.skills, 'R', 'RL');
const damagelist4 = calculate_damage(base_detail, bonus_detail, 'RL', 'RL', 'Electric', skill_multiplier4, data.level);
const damage4 = {
title: '连携技:太平令',
value: damagelist4,
@ -563,8 +563,8 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
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 skill_multiplier4 = getskilllevelnum(data.id, data.skills, 'R', 'RL');
const damagelist4 = calculate_damage(base_detail, bonus_detail, 'RL', 'RL', 'Physical', skill_multiplier4, data.level);
const damage4 = {
title: '连携技:刃爪挥击',
value: damagelist4,
@ -641,8 +641,8 @@ export const avatar_ability = (data, base_detail, bonus_detail) => {
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 skill_multiplier4 = getskilllevelnum(data.id, data.skills, 'R', 'RL');
const damagelist4 = calculate_damage(base_detail, bonus_detail, 'RL', 'RL', 'Electric', skill_multiplier4, data.level);
const damage4 = {
title: '连携技:转转转!',
value: damagelist4,

View file

@ -13,26 +13,29 @@ export const calculate_damage = (
logger.debug('merged_attr', merged_attr);
logger.debug(logger.green(skill_type + `${add_skill_type})伤害乘区计算:`));
logger.debug('倍率', skill_multiplier);
const attack = merged_attr.attack;
logger.debug('攻击区', attack);
logger.debug('攻击', attack);
logger.debug('技能倍率', skill_multiplier);
const defence_multiplier = get_defence_multiplier(
merged_attr,
level,
skill_type,
add_skill_type,
);
logger.debug('防御区', defence_multiplier);
const resistance_area = get_resistance_area(
const critical_chance_base = get_critical_chance_base(
merged_attr,
skill_type,
add_skill_type,
avatar_element
);
logger.debug('抗性区', resistance_area);
logger.debug('暴击率', critical_chance_base);
const critical_damage_base = get_critical_damage_base(
merged_attr,
skill_type,
add_skill_type,
avatar_element
);
logger.debug('暴击伤害', critical_damage_base);
const qiwang_damage = critical_chance_base * (critical_damage_base - 1) + 1;
logger.debug('暴击期望', qiwang_damage);
const injury_area = get_injury_area(
merged_attr,
@ -50,24 +53,21 @@ export const calculate_damage = (
);
logger.debug('易伤区', damage_ratio);
const critical_damage_base = get_critical_damage_base(
const resistance_area = get_resistance_area(
merged_attr,
skill_type,
add_skill_type,
avatar_element
);
logger.debug('爆伤区', critical_damage_base);
logger.debug('抗性区', resistance_area);
const critical_chance_base = get_critical_chance_base(
const defence_multiplier = get_defence_multiplier(
merged_attr,
level,
skill_type,
add_skill_type,
avatar_element
);
logger.debug('暴击区', critical_chance_base);
const qiwang_damage = critical_chance_base * (critical_damage_base - 1) + 1;
logger.debug('暴击期望', qiwang_damage);
logger.debug('防御区', defence_multiplier);
const damage_cd =
attack *