Files
bl/docs/effect-unimplemented-tasks/task-048-effects-851-855.md

60 lines
2.7 KiB
Go
Raw Normal View History

# Task 048: Effects 851-855
## 目标
- 补齐以下 5 或最后一组不足 5 当前判定未实现的 skill effect
- 实现位置优先放在 `logic/service/fight/effect/`
- effect 需要展示说明同步更新 `logic/service/fight/effect/effect_info_map.go`
- 完成后至少执行`cd /workspace/logic && go test ./service/fight/effect`
## Effect 列表
### Effect 851
- `argsNum`: `1`
- `info`: `使对手随机进入害怕、失明、烧伤、冻伤、中毒其中{0}种异常状态`
### Effect 852
- `argsNum`: `2`
- `info`: `附加自身最大体力{0}%的百分比伤害并恢复等量体力恢复体力时若自身体力低于最大体力的1/{1}则恢复效果和百分比伤害翻倍`
### Effect 853
- `argsNum`: `3`
- `info`: `附加自身最大体力值与速度值总和{0}%的百分比伤害,每次使用增加{1}%,最高{2}%`
### Effect 854
- `argsNum`: `1`
- `info`: `令对手下1次使用的威力高于{0}的攻击技能无效`
### Effect 855
- `argsNum`: `1`
- `info`: `将下次受到的伤害{0}%反馈给对手 `
## 备注
- 该清单按当前仓库静态注册结果生成如果某个 effect 实际通过其他模块或运行时路径实现需要先复核后再落代码
- `201``445` 这类占位 effect优先补核心逻辑或补充明确的不可实现说明
## 实现记录
- 已实现`851``852``853``854``855`
- 主要实现文件`/workspace/logic/service/fight/effect/851_855.go`
- 说明映射已更新`/workspace/logic/service/fight/effect/effect_info_map.go`
- 为支持 `851` 失明状态补充了状态枚举与最小战斗逻辑
- `logic/service/fight/info/info.go`
- `logic/service/fight/effect/effect_status.go`
## 实现说明
- `851`按文案从 `害怕/失明/烧伤/冻伤/中毒` 中不重复随机附加 `{0}` 种状态
- `852` `Skill_Use` 节点追加基于自身最大体力的百分比伤害并等量回血若当前体力低于最大体力的 `1/{1}`则伤害与回血翻倍
- `853`复用连续使用增幅基类自身最大体力值 + 当前速度实际值计算百分比附伤
- `854`命中后给对手挂一次性子效果当对手下次使用威力高于阈值的攻击技能时直接令该技能 `MISS`
- `855`命中后给自身挂一次性子效果下次受到伤害时按最终伤害值的 `{0}%` 反馈给对手
- `失明`仓库原先仅保留预留注释未有实际状态枚举与行为本次按现有配置编号 `20` 补齐并实现为出手前将技能命中率降为 `50%` 的最小可靠版本
## 验证
- `cd /workspace/logic && go test ./service/fight/effect`
- `cd /workspace/logic && go build ./...`