diff --git a/docs_dev/plans/2026-07-23-missing-features-roadmap.md b/docs_dev/plans/2026-07-23-missing-features-roadmap.md index 68d28d3..88d8e26 100644 --- a/docs_dev/plans/2026-07-23-missing-features-roadmap.md +++ b/docs_dev/plans/2026-07-23-missing-features-roadmap.md @@ -40,7 +40,7 @@ E6-a 玩家无敌帧(i-frames) ← 先行小项:Boss 弹幕公平性前置, **目标**:让子弹的 pierce 以外的深度维度真正生效,使元素、抗性、轨迹类词条与核心特性产生行为差异。 **现状(代码复核 2026-07-23)**: -- 元素抗性:`damage_context.gd:26` `calc_damage(armor, resistance)` 公式含 `(1−resistance)`,但 `enemy_manager.apply_damage_from_context` 调 `ctx.calc_damage()` 不传参 → resistance 恒 0;`player_stats.gd:23 resistance` 亦为占位。抗性维度是**死代码**。 +- ~~元素抗性~~ ✅ **完成**(2026-07-24,`feat/element-resistance`):`apply_damage_from_context` 按 `ctx.damage_type` 查 `_RESIST` 表传入 `calc_damage(0, res)`;`enemies.json` 每型可选 `resistances{元素名:-0.9~0.9}`(支持负=弱点加伤);设计器敌人页加 6×5 抗性网格。MCP 实测:抗火0.5→半伤、弱冰-0.5→1.5×、抗性+护甲叠加45。⚠️ **已知限制**:DOT 伤害(`status_manager.gd:116` 直调 `apply_damage`)暂不享元素抗性(架构上 DOT 不走 context,见 E2)。(`player_stats.gd:23 resistance` 玩家侧抗性仍占位。) - 连锁/弹跳:`bullet_manager.gd` 仅消费 `pierce_remaining`(:98-101),**无** `bounce_remaining` 消费、无 `visited_targets`、无 `pow(0.9,bounce)` 衰减。 - 归航:`bullet_manager.gd:21` 每帧建 `_enemy_pos_snapshot`(预分配满足 P6-N25)但 `_gd_integrate` 无 homing 转向计算,**快照无人消费**。 - 轨迹修正(加速/曲线):`_data +11 acceleration` 已积分,但无"转向/曲线"类修饰器写入。 @@ -50,7 +50,7 @@ E6-a 玩家无敌帧(i-frames) ← 先行小项:Boss 弹幕公平性前置, **依赖**:无硬依赖;元素 tag 体系已在(`SpellNode.element_tags`)。敌人需有 per-type/per-status 抗性数据源(新增 `enemies.json` 抗性字段或状态减抗)。 **切分(建议 4 个子计划)**: -1. **元素抗性 (1-Res)**:enemies.json 增 `resistances:{element:0..1}`;EnemyManager 命中时按子弹 `damage_type`/element 查抗性,传入 `calc_damage(armor, res)`;设计器敌人页加抗性栏。S。 +1. ~~**元素抗性 (1-Res)**~~ ✅ **完成**(2026-07-24,`feat/element-resistance`;spec/plan `docs_dev/{specs,plans}/2026-07-24-element-resistance*`):enemies.json `resistances{元素名:-0.9~0.9}`;EnemyManager `_RESIST` 查表传入 `calc_damage(0,res)`;设计器 6×5 抗性网格。 2. **连锁/弹跳 chain/bounce**:子弹冷数据加 `bounce_remaining` + `visited_targets`;命中后若 bounce>0 且有未命中目标 → 重定向速度朝最近未访问敌人,衰减 `×0.9`;到 0 回收。修饰器 `modifier_bounce`。S~M。 3. **归航 homing**:子弹冷数据 `homing_strength`;`_gd_integrate` 消费 `_enemy_pos_snapshot` 求最近敌人,按 strength 插值转向速度向量。修饰器 `modifier_homing`。S。 4. **轨迹修正**:曲线/环绕类(angular velocity 字段)+ 对应修饰器。S(可选,最低价值,YAGNI 可延后)。