docs(mana): spec §2.4 记录 LOOP/CIRCUIT 也扣蓝(复审修复 8b9565e)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-20 16:44:11 +08:00
co-authored by Claude Opus 4.8
parent 8b9565e1ff
commit 022017e551
@@ -66,7 +66,7 @@ func regen_mana(delta: float) -> void # mana = min(mana_max,
- **TRIGGER** 注册 SubPayload 时扣其 `mana_cost`;命中后 SubPayload`execute_sub`,异步 on-hit)执行**不再扣蓝**(MVP 简化,避免命中回调里做资源判定)。
- **被控制流跳过的节点不扣蓝**:超出 `actions_remaining` 的 ACTION、被 LOGIC 门跳过的分支、被共鸣 `_consumed` 标记的输入卡,均不产生蓝耗。
- **中止信号机制**`ctx` 上的 depleted 标志位 vs 效果函数返回 bool 令主循环 break)留实现计划敲定;语义目标一致:一旦某要生效的节点付不起蓝,本次施法就此打住,已生效部分保留。
- **仅主施法流消耗魔力**`execute_compiled` 这一遍);SubPayload 的 on-hit 执行不消耗
- **施法时立即执行的路径都消耗魔力**`execute_compiled` 主循环、**LOOP 体(`_run_logic_loop`**、**CIRCUIT 分支(`_run_branch_payload`)** 均逐节点扣蓝、蓝空即停(复审发现 LOOP/CIRCUIT 曾漏扣、已修 `8b9565e`);唯 **SubPayload 的 on-hit 执行(`execute_sub`)不消耗**——命中回调不做资源判定
### 2.5 `combat_s2` HUD —— 蓝条
- 在 HUD 区新增蓝色 `ProgressBar`(或等效控件),`max_value = PlayerStats.mana_max``value = PlayerStats.mana`