feat(override-editor): add shield duration override support

1. add shield_duration translation and override config entry
2. add warning tip for shield duration setting with usage notes
3. control tip visibility based on whether shield_duration is configured
This commit is contained in:
panFD
2026-09-14 17:15:36 +08:00
parent 5583dca2b6
commit f2a4926c49
3 changed files with 17 additions and 0 deletions

View File

@@ -317,6 +317,7 @@ const OV_LABELS = {
timed_debuff_id: 'debuff',
debuff_value: 'dval',
debuff_chance: 'dchance',
shield_duration: '盾时',
summon_count: '数',
thorns_dmg: 'thorns',
thorns_rate: 'thorns',

View File

@@ -97,6 +97,17 @@
:title="debuffHint.title"
:description="debuffHint.desc"
/>
<!-- 选中护盾时长后的取值语义提示:仅护盾技能生效,0=永久易踩坑 -->
<el-alert
v-if="shieldDurationHint"
type="warning"
:closable="false"
show-icon
class="hint-alert"
style="margin-bottom: 6px"
title="shield_duration 仅护盾技能(kind=Shield,如 6301)生效"
description="取值为秒数:>0 持续对应秒数(底座 6301 默认 7 秒);0 表示永久护盾(不是立即消失);不配置则沿用底座值。护盾数值由 ap 覆写控制(施法者最大生命 ap%)。"
/>
<!-- 选中 buff(增益)后的取值语义提示:缺省挂施法者自身;tick 类正=回血/负=自伤,modifier 类正=增强 -->
<el-alert
v-if="buffHint"
@@ -151,6 +162,9 @@ const showEnemyBuffWarn = computed(() => isEnemyHost.value && rows.value.some((r
// 是否配置了 proc_skill(施法后概率触发主动技能):控制触发语义提示显隐
const hasProcSkill = computed(() => rows.value.some((r) => r.key === 'proc_skill'))
// 是否配置了 shield_duration:控制护盾时长取值语义提示显隐(0=永久易踩坑)
const shieldDurationHint = computed(() => rows.value.some((r) => r.key === 'shield_duration'))
// 易伤 buff id(与游戏侧 BuffSet.VULNERABLE_BUFF_ID 对应),取值语义特殊需单独提示
const VULNERABLE_ID = 7002

View File

@@ -161,6 +161,8 @@ export const OVERRIDE_KEYS = [
{ key: 'para', label: 'para 麻痹概率' },
{ key: 'bck', label: 'bck 击退' },
{ key: 'bck_chance', label: 'bck_chance 击退概率' },
// 护盾型覆写:仅 kind=Shield 技能生效(底座 6301 默认 7 秒)
{ key: 'shield_duration', label: 'shield_duration 护盾持续秒(0=永久)' },
// buff 型覆写:值为 BuffList 配置 id,前端用 meta.BuffList 渲染下拉(支持 allow-create 手输兜底)
// buff 语义为增益,缺省挂施法者自身;debuff 语义为对敌减益,缺省挂被命中者(目标不可覆写)
{ key: 'timed_buff_id', label: 'timed_buff_id 计时buff', type: 'buff' },