Implement Phase 8: Rig Relocation and Component Modularization
- Moved the rig scene from `res://master_rig.tscn` to `res://scenes/stickman_rig.tscn`, preserving its UID. - Split the `StickmanRig` controller into three components: `StickmanLocomotion`, `StickmanRagdoll`, and `StickmanActionRunner`. - Updated the architecture to ensure `StickmanRig` acts as the public facade for the new components. - Created a new test suite `test_phase8_rig_modularization.gd` to verify the integrity of the relocated rig and its components. - Added checks for scene loading, component resolution, action queue delegation, and state authority.
This commit is contained in:
@@ -279,8 +279,8 @@ func _test_bug4_stage_grid_no_prehighlight() -> void:
|
||||
% stage._spawner.get_selected_stickman_path())
|
||||
# Real scan has 3 stickmen -> no single-item auto-select skip.
|
||||
var grid: GridContainer = stage._selector._grid
|
||||
_check(grid.get_child_count() == 3,
|
||||
"real scan populates 3 stickman cells (got %d)" % grid.get_child_count())
|
||||
_check(grid.get_child_count() == 4,
|
||||
"real scan populates 4 stickman cells (got %d)" % grid.get_child_count())
|
||||
_check(not stage._selector.has_method("_is_selected"),
|
||||
"stage selector exposes no pre-highlight API")
|
||||
_check(not _any_cell_has_stylebox_override(stage._selector),
|
||||
|
||||
Reference in New Issue
Block a user