Files
gplan-2/game/core/effect_context.gd
T
DKChan ae5baed699 feat(卡② T1): EffectContext 新建 + 四宿主接线(引擎接口未动·纯 ctx 引用束)
- 新建 game/core/effect_context.gd(四桶公开类型化字段,零方法)
- BattleOrchestrator:fx_counters_round/fx_counters_battle/counters_ctx 三成员,_init 建 ctx 挂自有两桶,
  begin_battle 挂 adventure_bucket(=_ledger.adventure_counters) 与 level_bucket(enc["level_counters"])
- set_fx 三协同件扩 ctx 参并存 _ctx(引擎 API 暂不改,T2 动)
- LevelRunner:level_counters 成员 + enc 下传
- 删 _reset_tree_limited_counters(按关清零改由 level 桶随 new 承载)+ 调用点 + 冒烟旧 V10 直呼断言
冒烟 1150/0(旧断言随函数退役,-1 项符合预期)。
2026-10-20 22:55:28 +08:00

11 lines
630 B
GDScript

## EffectContext——效果引擎四桶计数器引用束(无状态引擎的外部状态承载)。
## 四桶按生命周期分:round(轮始整桶清空)/battle(随编排器生灭)/level(随 LevelRunner 生灭)/
## adventure(随 RunLedger 生灭)。本类零方法零行为,只持引用;桶容器由宿主对象 new,本类只挂引用。
class_name EffectContext
extends RefCounted
var round_bucket: Dictionary[Variant, Variant] = {}
var battle_bucket: Dictionary[Variant, Variant] = {}
var level_bucket: Dictionary[Variant, Variant] = {}
var adventure_bucket: Dictionary[Variant, Variant] = {}