工程(判据出处注记3/7·battle+contracts+integration): 20套件80函数逐函数挂# oracle注记——战斗四文档验收句(战斗结算:360-366/敌人系统:295-311/增益状态:250-262/地图战斗资源:235-241)+排雷玩法:231/237+行动经济+地形变异:156-158+奇物+存档序列化断点域/迁移链+关卡节点图生成:132+architecture:89/90/107/144+code-conventions:40/41/54; 本步凭据: 六目录代表套件直跑全绿(seal/contracts×2/integration×3),其余随WP4全量档兜
This commit is contained in:
1 parent
ddc352a985
commit
9e26df16be
18 files changed
+99
No files matched your search
@@ -23,6 +23,7 @@ var _rows: Array = [] # 当前 run 的行协议收集(_on_row 绑定法—
|
||||
|
||||
|
||||
func _init() -> void:
|
||||
# oracle: design/gdd/systems/战斗循环/战斗结算.md:360 伤害单据编排宿主(装载组)
|
||||
var db = ConfigDBScript.new()
|
||||
var load_ok: bool = db.load_tables("res://data/tables", true)
|
||||
Kit.check("前置:表加载零 error", load_ok and db.diagnostics_count("error") == 0)
|
||||
@@ -70,6 +71,7 @@ func _row_by_display_prefix(prefix: String) -> Dictionary:
|
||||
# ---- 五配方一次全流程 + 双跑逐位复现 ----
|
||||
|
||||
func _run_recipe_sequence(db) -> Array:
|
||||
# oracle: design/gdd/systems/战斗循环/战斗结算.md:362(五段全序——配方序列组)
|
||||
_rows = []
|
||||
var h = _harness(db)
|
||||
var units = h.units
|
||||
@@ -176,6 +178,7 @@ func _run_recipe_sequence(db) -> Array:
|
||||
|
||||
|
||||
func _test_five_recipes_and_replay(db) -> void:
|
||||
# oracle: design/gdd/systems/战斗循环/战斗结算.md:363(同种子回放逐行相同组)
|
||||
var run1: Array = _run_recipe_sequence(db)
|
||||
Kit.check("五配方序列产出 5 行伤害行", run1.size() == 5)
|
||||
var run2: Array = _run_recipe_sequence(db)
|
||||
@@ -185,6 +188,7 @@ func _test_five_recipes_and_replay(db) -> void:
|
||||
# ---- A 模式(开单即结——回切位) ----
|
||||
|
||||
func _test_policy_immediate_mode(db) -> void:
|
||||
# oracle: design/gdd/systems/战斗循环/战斗结算.md:362(结算策略即时面组)
|
||||
_rows = []
|
||||
var h = _harness(db)
|
||||
if not h.spawn_ok:
|
||||
@@ -200,6 +204,7 @@ func _test_policy_immediate_mode(db) -> void:
|
||||
# ---- 来源敌死亡:队列中未结单据作废(死亡即不动手) ----
|
||||
|
||||
func _test_source_death_void(db) -> void:
|
||||
# oracle: design/gdd/systems/战斗循环/敌人系统.md:133(摇定后兑现前被杀本拍作废组)
|
||||
_rows = []
|
||||
var h = _harness(db)
|
||||
if not h.spawn_ok:
|
||||
@@ -233,6 +238,7 @@ func _unit_fixture() -> Dictionary:
|
||||
|
||||
|
||||
func _test_identical_content_dual_enemy(db: ConfigDb) -> void:
|
||||
# oracle: design/gdd/systems/战斗循环/敌人系统.md:303(双敌同内容顺位组)
|
||||
var a := _unit_fixture()
|
||||
var b := _unit_fixture()
|
||||
Kit.check("前置:双敌字典内容全同且非同一实例", a == b and not is_same(a, b))
|
||||
|
||||
Reference in new issue
Block a user