refactor: move resource authority into simulation
This commit is contained in:
@@ -87,11 +87,26 @@ func _run() -> void:
|
||||
"Jajce navigation path should exist from %s to %s" % [origin, destination]
|
||||
)
|
||||
|
||||
var selected := ResourceNode.find_available(&"gather_food", 777, Vector3.ZERO)
|
||||
var manager: Node = load("res://simulation/SimulationManager.gd").new()
|
||||
manager.debug_logs = false
|
||||
root.add_child(manager)
|
||||
manager.set_process(false)
|
||||
await process_frame
|
||||
var selected: ResourceNode = manager.acquire_resource_target(
|
||||
&"gather_food",
|
||||
777,
|
||||
Vector3.ZERO
|
||||
)
|
||||
_check(selected != null, "Target discovery should find Jajce resources without a parent path")
|
||||
if selected != null:
|
||||
_check(selected.reserve(777), "Selected Jajce resource should be reservable")
|
||||
selected.release(777)
|
||||
var selected_state: ResourceStateRecord = manager.get_resource_state(
|
||||
selected.node_id
|
||||
)
|
||||
_check(
|
||||
selected_state.get_reserved_by() == 777,
|
||||
"Selected Jajce resource should be authoritatively reserved"
|
||||
)
|
||||
manager.release_resource(selected.node_id, 777)
|
||||
|
||||
if failures.is_empty():
|
||||
print("[TEST] Jajce scaffold passed: Terrain3D, stable IDs, 24 navigation routes")
|
||||
|
||||
Reference in New Issue
Block a user