From d9575599b359dfcc0059176f962cd6b16ade9e1f Mon Sep 17 00:00:00 2001 From: panFD Date: Fri, 31 Jul 2026 00:48:42 +0800 Subject: [PATCH] =?UTF-8?q?refactor(config):=20=E7=BB=9F=E4=B8=80=E6=8A=80?= =?UTF-8?q?=E8=83=BD=E8=A7=A6=E5=8F=91=E5=90=8D=E7=A7=B0=E7=BF=BB=E8=AF=91?= =?UTF-8?q?=E5=B9=B6=E4=BF=AE=E6=AD=A3=E5=BC=95=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将技能触发类型的中文命名从"进击/受击"改为更准确的"攻击/受伤",同时修正HeroSkillDesc.ts中对SkillTriggerDesc的错误引用,替换为正确的SkillTriggerName。 --- assets/script/game/common/config/HeroSkillDesc.ts | 15 +++++++++------ assets/script/game/common/config/heroSet.ts | 4 ++-- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/assets/script/game/common/config/HeroSkillDesc.ts b/assets/script/game/common/config/HeroSkillDesc.ts index 91301cda..1b41689c 100644 --- a/assets/script/game/common/config/HeroSkillDesc.ts +++ b/assets/script/game/common/config/HeroSkillDesc.ts @@ -23,12 +23,12 @@ * 字段结构一致,天然都满足。HeroBoxComp 传 model 显示当前等级;卡池/商店传 heroInfo 显示 1 级。 * * 依赖: - * - heroSet :SkillTriggerDesc、SkillTriggerType、HeroEvolve + * - heroSet :SkillTriggerName、SkillTriggerType、HeroEvolve * - SkillSet :SkillSet、mergeSkillParams、SkillOverrides、SkillKind、TGroup * - SkillDescSet:结构化描述模板 * - FieldSkillSet(驻场技能)、BuffList(计时 buff 默认值兜底)、Attrs(属性枚举) */ -import { HeroEvolve, SkillTriggerDesc, SkillTriggerType } from "./heroSet"; +import { HeroEvolve, SkillTriggerName, SkillTriggerType } from "./heroSet"; import { FieldSkillSet, mergeSkillParams, SkillConfig, SkillKind, SkillOverrides, SkillSet, TGroup } from "./SkillSet"; import { FieldDescSet, FieldValueFmt, SkillDescSet } from "./SkillDescSet"; import { BuffList } from "./BuffSet"; @@ -224,7 +224,7 @@ function buildReviveLine(source: ISkillDescSource): ISkillLine | null { const lv = Math.max(1, source.lv ?? 1); const maxCount = revive.r_num + Math.floor((lv - 1) * revive.upr); const hpPct = base.ap ?? 0; - const tpl = SkillTriggerDesc[SkillTriggerType.Revive] ?? "复活时"; + const tpl = SkillTriggerName[SkillTriggerType.Revive] ?? "复活"; // 高亮片段选回血百分比(数值中最关键的收益指标) return { prefix: `${tpl}:「${base.name}」 可复活${maxCount}次,每次恢复`, @@ -263,12 +263,15 @@ function buildSkillLines(source: ISkillDescSource): ISkillLine[] { for (const key of TRIGGER_KEYS) { const arr = source[key] as { s_uuid: number; t_num: number; overrides?: SkillOverrides }[] | undefined; if (!arr?.length) continue; - const tpl = SkillTriggerDesc[key] ?? key; + // 触发类型简称(召唤/亡语/起手/生息/进击/受击) + const name = SkillTriggerName[key] ?? key; + // 仅进击/受击带触发次数,拼为"×n";其余简称直接用 + const needCount = key === SkillTriggerType.Atking || key === SkillTriggerType.Atked; for (const item of arr) { const base = SkillSet[item.s_uuid]; if (!base) continue; const skill = mergeSkillParams(base, item.overrides); - const trigger = tpl.replace("n", String(item.t_num)); + const trigger = needCount ? `${name}×${item.t_num}` : name; lines.push(buildEffectLine(`${trigger}:「${base.name}」 `, skill)); } } @@ -276,7 +279,7 @@ function buildSkillLines(source: ISkillDescSource): ISkillLine[] { // ---- 驻场光环(field):查 FieldDescSet 结构化渲染,value 数值高亮 ---- const fieldUuids = source[SkillTriggerType.Field] as number[] | undefined; if (fieldUuids?.length) { - const tpl = SkillTriggerDesc[SkillTriggerType.Field] ?? "光环"; + const tpl = SkillTriggerName[SkillTriggerType.Field] ?? "光环"; for (const uuid of fieldUuids) { const line = buildFieldLine(`${tpl}:`, uuid); if (line) lines.push(line); diff --git a/assets/script/game/common/config/heroSet.ts b/assets/script/game/common/config/heroSet.ts index 7c6cd129..3a9b33a4 100644 --- a/assets/script/game/common/config/heroSet.ts +++ b/assets/script/game/common/config/heroSet.ts @@ -127,8 +127,8 @@ export const SkillTriggerName = { [SkillTriggerType.FStart]: "起手", [SkillTriggerType.FEnd]: "生息", [SkillTriggerType.Field]: "光环", - [SkillTriggerType.Atking]: "进击", - [SkillTriggerType.Atked]: "受击", + [SkillTriggerType.Atking]: "攻击", + [SkillTriggerType.Atked]: "受伤", [SkillTriggerType.Revive]: "复活", }