iter51-卡1
This commit is contained in:
1 parent
61995733f7
commit
1cd6e2b1b0
21 files changed
+68
-93
No files matched your search
@@ -1,7 +1,7 @@
|
||||
class_name CombatSegment
|
||||
extends RefCounted
|
||||
# ③ 战斗段 Segment(P1-1 结算巨函数拆段;段边界=审计五段〔裁点③甲〕)。
|
||||
# 职责:案C 闸复位 + 本轮扫雷事实推导(执拗 streak 取数面)+ 蓄力层注入 + 主角先手
|
||||
# 职责:案C 闸复位 + 本轮扫雷事实推导(执拗 streak 取数面)+ 主角先手
|
||||
# + 敌方行动兑现 + 地图伤害账殿后(补提交统一结账)。
|
||||
# 调用序:主角先手 → 逐敌还手 → 地图伤害账殿后〔案C〕;hero hp=0 短路。
|
||||
# 行发射/开单单点归宿主(oc)——案C 暂存闸归 RewardGrant(段持三引用直调,零转发壳)——
|
||||
@@ -32,8 +32,6 @@ func run(ri: int) -> void:
|
||||
elif evt.kind == "mine":
|
||||
round_mine = true
|
||||
oc.fx_host().facts_inject["dig_streak"] = 0 if round_mine else round_safe
|
||||
# 蓄力层不再逐轮注入(效果端口件闭面——fact charge_layers 由宿主 biz_fact 活读 action_economy
|
||||
# 现值:唯一写点=finish_round_stop 于上轮授予段尾,本轮授予段发射前无第二写点,活读等价)
|
||||
_hero_strike(ri)
|
||||
_enemy_actions(ri)
|
||||
_board_deferred_settle(ri)
|
||||
|
||||
@@ -259,8 +259,7 @@ func _seal_strike_value(fs_fx: Array, fs_hits: int, fs_misses: int) -> Dictionar
|
||||
|
||||
|
||||
# round_end 发射+施加(每轮结算收口:熔火之躯反打单开立〔open_ticket 即时执行〕+积层清零〔counter_add
|
||||
# set〕;整备转蓄力由 finish_round_stop 承载——停手侧 AP 已在 request_stop 记账,转存决策=grant_ap
|
||||
# (mode:transfer) 订阅定夺,无订阅走 RAP 转存缺省)+施加面:grant_gp〔爆破会计/收盘——escrow 战斗域
|
||||
# set〕;停手侧 AP 已在 request_stop 记账,finish_round_stop 按转存率转存 RAP)+施加面:grant_gp〔爆破会计/收盘——escrow 战斗域
|
||||
# 缓冲,随 gp_dropped 上抛〕/grant_ap mode:queue〔封印回响——返 1 AP 下轮,queue_ap_delta 通道与轮始
|
||||
# 加成同面〕+段界收口(转存率入参、清图奖励、揭示兑付、段界结账)
|
||||
func _round_end_apply(ri: int) -> void:
|
||||
@@ -278,8 +277,7 @@ func _round_end_apply(ri: int) -> void:
|
||||
oc.action_economy.queue_ap_delta(int(h.get("value", 0)))
|
||||
# 转存率入参(储备罐 rap_transfer_mult magnitude=目标转存率百分比 125=1.25:1;未装配=100 与 1:1 逐位一致)
|
||||
var rap_pct: int = oc.attune_param_sum("rap_transfer_mult")
|
||||
oc.action_economy.finish_round_stop(fx_host.engine.has_effect_on("round_end", "grant_ap", "transfer"),
|
||||
rap_pct if rap_pct > 0 else 100)
|
||||
oc.action_economy.finish_round_stop(rap_pct if rap_pct > 0 else 100)
|
||||
if oc._facts.path == "cleared":
|
||||
reward_grant.grant_clear_reward(ri, oc._facts.board_from_midround, oc.perfect_sweep_earned())
|
||||
fx_host.flush_pending_reveals(ri) # 揭示效果兑付(授予段末统一掷格,防轮 facts 迭代重入)
|
||||
|
||||
Reference in new issue
Block a user