iter51-卡2
This commit is contained in:
1 parent
1cd6e2b1b0
commit
372b4fdc31
27 files changed
+1231
-356
No files matched your search
@@ -1,16 +1,22 @@
|
||||
class_name DecaySegment
|
||||
extends RefCounted
|
||||
# ④ 衰减段 Segment(P1-1 结算巨函数拆段;段边界=审计五段〔裁点③甲〕)。
|
||||
# 职责:状态衰减恰一次恒执行含末轮——先兑付后衰减。行发射归宿主编排器(oc)——
|
||||
# 职责:状态衰减恰一次恒执行含末轮——先兑付后衰减。
|
||||
# 耦合边界(5.1 封装修复换代):引用束注入——构造收编排器组装的 20 键封闭束,本段断言 2 键
|
||||
# (status_effects/emit_row_cb)解包同名成员;行发射经 emit_row_cb 回宿主——对编排器零引用。
|
||||
# 零算法改动(🔴 零行为变更契约)。
|
||||
|
||||
var oc: BattleOrchestrator # 宿主(类型标注=段内 := 推断前提;循环类名引用 Godot 4 全局类安全) 宿主
|
||||
var status_effects: StatusContainer # 状态容器(衰减推进面)
|
||||
var emit_row_cb: Callable # 宿主 _emit_row——行协议面单点(5 参 head 束形)
|
||||
|
||||
|
||||
func _init(host) -> void:
|
||||
oc = host
|
||||
func _init(bundle: Dictionary) -> void:
|
||||
for k in ["status_effects", "emit_row_cb"]:
|
||||
assert(bundle.has(k), "[衰减段] 引用束缺键: %s" % k)
|
||||
status_effects = bundle.status_effects
|
||||
emit_row_cb = bundle.emit_row_cb
|
||||
|
||||
|
||||
func run(ri: int) -> void:
|
||||
var k: int = oc._status_effects.decay_round()
|
||||
oc._emit_row({"type": "decay", "source_class": "", "origin_cell": Vector2i(-1, -1)}, ri, "状态衰减", k, {})
|
||||
var k: int = status_effects.decay_round()
|
||||
emit_row_cb.call({"type": "decay", "source_class": "", "origin_cell": Vector2i(-1, -1)}, ri, "状态衰减", k, {})
|
||||
Reference in new issue
Block a user