feat(skill-system): 新增计时debuff机制,支持技能命中敌方附加减益效果
本次提交完整实现了技能对敌附加debuff的完整流程: 1. 新增TimedDebuffSnapshot数据结构,用于透传debuff配置 2. 在SkillConfig和SkillOverrides中新增debuff相关配置项 3. 实现HeroAtkSystem中debuff的判定与施加逻辑 4. 完善后台配置、前端编辑器的debuff配置支持 5. 调整了buff目标判定逻辑,修复了原有默认目标的语义混淆问题 6. 优化了BuffSystem的调试日志,新增了debuff分类标识 7. 批量更新了现有英雄技能的debuff配置示例
This commit is contained in:
@@ -257,10 +257,17 @@ function overrideShort(ov, { includeAp = true } = {}) {
|
||||
const buffName = cache?.BuffList?.[ov.timed_buff_id]?.name || ''
|
||||
const val = ov.buff_value != null ? `${ov.buff_value}` : ''
|
||||
const chance = ov.buff_chance != null ? `buff_chance${ov.buff_chance}` : ''
|
||||
// buff_target 非默认(被命中者)时标注目标,便于识别"挂自己/挂敌方"等跨阵营 buff
|
||||
const tgtLabel = ov.buff_target != null && ov.buff_target !== 0 ? `→${BUFF_TARGET_NAMES[ov.buff_target]}` : ''
|
||||
// buff_target 非默认(施法者自身)时标注目标,便于识别"挂敌方/挂队友"等跨阵营 buff
|
||||
const tgtLabel = ov.buff_target != null && ov.buff_target !== 1 ? `→${BUFF_TARGET_NAMES[ov.buff_target]}` : ''
|
||||
parts.push(`附加${val}${buffName}${ov.timed_buff_id}${chance}${tgtLabel}`)
|
||||
}
|
||||
// timed_debuff_id:命中被攻击者后施加(目标固定,无需标注)
|
||||
if (ov.timed_debuff_id != null) {
|
||||
const debuffName = cache?.BuffList?.[ov.timed_debuff_id]?.name || ''
|
||||
const val = ov.debuff_value != null ? `${ov.debuff_value}` : ''
|
||||
const chance = ov.debuff_chance != null ? `debuff_chance${ov.debuff_chance}` : ''
|
||||
parts.push(`命中附加${val}${debuffName}${ov.timed_debuff_id}${chance}`)
|
||||
}
|
||||
// proc_skill:命中后概率触发额外技能,标注被触发技能名/概率/覆写 ap(若有)
|
||||
if (ov.proc_skill?.s_uuid != null) {
|
||||
const procName = cache?.SkillSet?.[ov.proc_skill.s_uuid]?.name || ''
|
||||
|
||||
Reference in New Issue
Block a user