[gd_scene load_steps=23 format=3 uid="uid://rs3hv73svbpa"] [ext_resource type="Script" uid="uid://4mg67crlim53" path="res://player/player.gd" id="1_h2yge"] [ext_resource type="Script" uid="uid://ii8ai801jur2" path="res://player/camera_rig.gd" id="2_1bvp3"] [ext_resource type="Script" uid="uid://dbb25ttlyogqr" path="res://simulation/SimulationManager.gd" id="3_lquwl"] [ext_resource type="Script" uid="uid://c1f3b26n4yntf" path="res://world/world_view_manager.gd" id="4_1bvp3"] [ext_resource type="PackedScene" uid="uid://dhxxyprqflotq" path="res://player/npc/NpcVisual.tscn" id="5_lquwl"] [ext_resource type="PackedScene" uid="uid://q0w3en4bfk42" path="res://assets/foliage/tree.glb" id="6_5vw27"] [ext_resource type="Script" uid="uid://cjvbgqx8rao0t" path="res://world/ui/ui.gd" id="6_7mycd"] [ext_resource type="PackedScene" uid="uid://dyu3r0cl0judq" path="res://assets/foliage/tree-high.glb" id="7_kek77"] [sub_resource type="NavigationMesh" id="NavigationMesh_lquwl"] vertices = PackedVector3Array(-14.5, 0.5, 0, -1, 0.5, 0, -1, 0.5, -0.75, 0, 0.5, -1, 0, 0.5, -14.5, -14.5, 0.5, -14.5, 0.75, 0.5, -1, 0.75, 0.75, -0.5, 14.5, 0.5, -0.5, 14.5, 0.5, -14.5, 0.75, 0.75, 0, 0, 1, 0, 0, 0.75, 0.75, -0.5, 0.75, 0.75, -0.5, 0.5, 14.5, 14.5, 0.5, 14.5, -1, 0.5, 0.75, -14.5, 0.5, 14.5) polygons = [PackedInt32Array(2, 1, 0), PackedInt32Array(3, 2, 4), PackedInt32Array(4, 2, 5), PackedInt32Array(5, 2, 0), PackedInt32Array(6, 3, 4), PackedInt32Array(8, 7, 6), PackedInt32Array(8, 6, 9), PackedInt32Array(9, 6, 4), PackedInt32Array(12, 11, 10), PackedInt32Array(10, 7, 8), PackedInt32Array(14, 13, 12), PackedInt32Array(10, 8, 12), PackedInt32Array(12, 8, 14), PackedInt32Array(14, 8, 15), PackedInt32Array(0, 1, 16), PackedInt32Array(16, 13, 14), PackedInt32Array(14, 17, 16), PackedInt32Array(16, 17, 0)] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_o5qli"] albedo_color = Color(0.16862746, 0.52156866, 0.30588236, 1) [sub_resource type="BoxMesh" id="BoxMesh_sgp6g"] [sub_resource type="BoxShape3D" id="BoxShape3D_lquwl"] size = Vector3(30, 0.1, 30) [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_o5qli"] radius = 0.4 height = 1.7 [sub_resource type="CapsuleMesh" id="CapsuleMesh_sgp6g"] [sub_resource type="BoxMesh" id="BoxMesh_0wfyh"] [sub_resource type="Environment" id="Environment_o5qli"] background_mode = 1 background_color = Color(0.46428233, 0.7990817, 0.98692364, 1) ambient_light_source = 2 ambient_light_color = Color(1, 1, 1, 1) ambient_light_energy = 0.5 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_5vw27"] albedo_color = Color(0.5328383, 0.4215183, 0.18649894, 1) [sub_resource type="BoxMesh" id="BoxMesh_5vw27"] material = SubResource("StandardMaterial3D_5vw27") [sub_resource type="CylinderMesh" id="CylinderMesh_5vw27"] top_radius = 1.129 height = 5.774 [sub_resource type="BoxMesh" id="BoxMesh_kek77"] [sub_resource type="PrismMesh" id="PrismMesh_5vw27"] [sub_resource type="BoxMesh" id="BoxMesh_4c57u"] [node name="Main" type="Node3D"] [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] transform = Transform3D(0.8660254, -0.43301272, 0.24999999, 0, 0.49999997, 0.86602545, -0.5, -0.75, 0.43301266, 0, 0, 0) light_energy = 2.0 [node name="World" type="Node3D" parent="."] [node name="NavigationRegion3D" type="NavigationRegion3D" parent="World"] navigation_mesh = SubResource("NavigationMesh_lquwl") [node name="GroundRoot" type="StaticBody3D" parent="World/NavigationRegion3D"] [node name="GroundMesh" type="MeshInstance3D" parent="World/NavigationRegion3D/GroundRoot"] transform = Transform3D(30, 0, 0, 0, 0.1, 0, 0, 0, 30, 0, -0.05, 0) material_override = SubResource("StandardMaterial3D_o5qli") mesh = SubResource("BoxMesh_sgp6g") skeleton = NodePath("../../..") [node name="GroundCollision" type="CollisionShape3D" parent="World/NavigationRegion3D/GroundRoot"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.18380833, 0) shape = SubResource("BoxShape3D_lquwl") [node name="Player" type="CharacterBody3D" parent="." node_paths=PackedStringArray("camera_rig", "simulation_manager", "farm_zone", "forest_zone", "food_zone", "guard_zone", "study_zone")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.05, 0) script = ExtResource("1_h2yge") camera_rig = NodePath("../CameraRig") simulation_manager = NodePath("../SimulationManager") farm_zone = NodePath("../TaskZone/FarmZone") forest_zone = NodePath("../TaskZone/ForestZone") food_zone = NodePath("../TaskZone/FoodZone") guard_zone = NodePath("../TaskZone/GuardZone") study_zone = NodePath("../TaskZone/StudyZone") stomach_capacity_for_food = 10 [node name="CollisionShape3D" type="CollisionShape3D" parent="Player"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.85, 0) shape = SubResource("CapsuleShape3D_o5qli") [node name="MeshInstance3D" type="MeshInstance3D" parent="Player"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.85, 0) mesh = SubResource("CapsuleMesh_sgp6g") [node name="FaceMarker" type="MeshInstance3D" parent="Player"] transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.4, 0, 1.2, 0.6266626) mesh = SubResource("BoxMesh_0wfyh") [node name="CameraRig" type="Node3D" parent="." node_paths=PackedStringArray("target")] transform = Transform3D(1, 0, 0, 0, 0.57357645, 0.81915206, 0, -0.81915206, 0.57357645, 0, 10, 8) script = ExtResource("2_1bvp3") target = NodePath("../Player") follow_speed = 8.0 deadzone_right = 2.0 deadzone_forward = 2.0 [node name="Camera3D" type="Camera3D" parent="CameraRig"] current = true fov = 65.0 [node name="SimulationManager" type="Node" parent="."] script = ExtResource("3_lquwl") [node name="WorldViewManager" type="Node" parent="." node_paths=PackedStringArray("simulation_manager", "active_npcs_parent", "farm_zone", "forest_zone", "guard_zone", "study_zone", "rest_zone", "food_zone")] script = ExtResource("4_1bvp3") npc_visual_scene = ExtResource("5_lquwl") simulation_manager = NodePath("../SimulationManager") active_npcs_parent = NodePath("../ActiveNPCs") farm_zone = NodePath("../TaskZone/FarmZone") forest_zone = NodePath("../TaskZone/ForestZone") guard_zone = NodePath("../TaskZone/GuardZone") study_zone = NodePath("../TaskZone/StudyZone") rest_zone = NodePath("../TaskZone/RestZone") food_zone = NodePath("../TaskZone/FoodZone") [node name="EventBus" type="Node" parent="."] [node name="WorldEnvironment" type="WorldEnvironment" parent="."] environment = SubResource("Environment_o5qli") [node name="ActiveNPCs" type="Node3D" parent="."] [node name="TaskZone" type="Node3D" parent="."] [node name="FarmZone" type="Marker3D" parent="TaskZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0, -6) [node name="MeshInstance3D" type="MeshInstance3D" parent="TaskZone/FarmZone"] transform = Transform3D(2.0639582, 0, 0, 0, 0.2, 0, 0, 0, 2.211021, -0.47271156, 0.47702956, -0.02484417) mesh = SubResource("BoxMesh_5vw27") [node name="ForestZone" type="Marker3D" parent="TaskZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8, 0, -6) [node name="smallTree" parent="TaskZone/ForestZone" instance=ExtResource("6_5vw27")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.13034248, 0.23380828, -0.6683569) [node name="highTree" parent="TaskZone/ForestZone" instance=ExtResource("7_kek77")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.78092957, 0.23380828, 0.17081833) [node name="GuardZone" type="Marker3D" parent="TaskZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 8) [node name="MeshInstance3D" type="MeshInstance3D" parent="TaskZone/GuardZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0) mesh = SubResource("CylinderMesh_5vw27") [node name="StudyZone" type="Marker3D" parent="TaskZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0, 6) [node name="MeshInstance3D" type="MeshInstance3D" parent="TaskZone/StudyZone"] transform = Transform3D(1, 0, 0, 0, 10, 0, 0, 0, 1, 0, 5, 0) mesh = SubResource("BoxMesh_kek77") [node name="RestZone" type="Marker3D" parent="TaskZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 0, 5) [node name="MeshInstance3D" type="MeshInstance3D" parent="TaskZone/RestZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) mesh = SubResource("PrismMesh_5vw27") [node name="FoodZone" type="Marker3D" parent="TaskZone"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -8) [node name="MeshInstance3D" type="MeshInstance3D" parent="TaskZone/FoodZone"] transform = Transform3D(4, 0, 0, 0, 3, 0, 0, 0, 4, 0, 1.5, 0) mesh = SubResource("BoxMesh_4c57u") [node name="UI" type="CanvasLayer" parent="." node_paths=PackedStringArray("simulation_manager")] script = ExtResource("6_7mycd") simulation_manager = NodePath("../SimulationManager") [node name="VillagePanel" type="PanelContainer" parent="UI"] offset_left = 20.0 offset_top = 20.0 offset_right = 280.0 offset_bottom = 140.0 [node name="MarginContainer" type="MarginContainer" parent="UI/VillagePanel"] layout_mode = 2 theme_override_constants/margin_left = 12 theme_override_constants/margin_top = 4 theme_override_constants/margin_right = 12 theme_override_constants/margin_bottom = 4 [node name="VillageStatsLabel" type="Label" parent="UI/VillagePanel/MarginContainer"] layout_mode = 2 theme_override_font_sizes/font_size = 10