feat: scale village queries and enrich Jajce center

This commit is contained in:
Rijad Zuzo
2026-07-16 23:51:08 +02:00
parent 4be72639d8
commit 2c88ed6ea8
48 changed files with 2059 additions and 280 deletions
+25
View File
@@ -31,6 +31,11 @@ func _run() -> void:
await process_frame
_check(simulation_manager.npcs.size() == 6, "Baseline should create six NPCs")
var runtime_player := main_scene.get_node("Player") as Node3D
_check(
runtime_player.is_in_group("grass_interactors"),
"The real player transform should drive nearby grass response"
)
var inspector_label := (
main_scene.get_node("UI/NpcInspectorPanel/MarginContainer/NpcInspectorLabel") as Label
)
@@ -60,6 +65,26 @@ func _run() -> void:
"Runtime knowledge UI check should use a completed simulation transaction"
)
var world_view := main_scene.get_node("WorldViewManager")
var all_npc_visuals_drive_grass := true
for npc_visual in world_view.active_npc_visuals.values():
all_npc_visuals_drive_grass = (
all_npc_visuals_drive_grass and (npc_visual as Node3D).is_in_group("grass_interactors")
)
_check(
all_npc_visuals_drive_grass,
"Every active villager visual should drive local grass response"
)
var grass_material := (
main_scene.get_node("JajceWorld/TerrainRoot/Terrain3D/CozyGrassField").get(
"mesh_material_override"
)
as ShaderMaterial
)
var grass_interactor_count := int(grass_material.get_shader_parameter("interactor_count"))
_check(
grass_interactor_count in range(1, 9),
"Grass shader should receive a bounded set of real nearby actor transforms"
)
var contributor_visual: Node3D = world_view.active_npc_visuals[contributor.id]
var witness_visual: Node3D = world_view.active_npc_visuals[witness.id]
var listener_visual: Node3D = world_view.active_npc_visuals[listener.id]