[gd_scene load_steps=67 format=3 uid="uid://dchj6g2i8ebph"] [ext_resource type="Script" uid="uid://brgmxhhhtakja" path="res://scenes/Levels/level.gd" id="1_a4mo8"] [ext_resource type="PackedScene" uid="uid://bb6hj6l23043x" path="res://assets/models/human.blend" id="1_eg4yq"] [ext_resource type="Script" uid="uid://bpxggc8nr6tf6" path="res://scenes/player.gd" id="1_muv8p"] [ext_resource type="PackedScene" uid="uid://c5of6aaxop1hl" path="res://scenes/block.tscn" id="2_tc7dm"] [ext_resource type="Script" uid="uid://b7fopt7sx74g8" path="res://scenes/Levels/menu.gd" id="3_tc7dm"] [ext_resource type="PackedScene" path="res://scenes/Characters/repo_bot.tscn" id="4_repo"] [ext_resource type="PackedScene" path="res://scenes/Vehicles/car.tscn" id="5_car"] [ext_resource type="PackedScene" uid="uid://bnqaqbgynoyys" path="res://assets/models/TestCharAnimated.glb" id="5_fi66n"] [ext_resource type="Script" uid="uid://bk53njt7i3kmv" path="res://scenes/Interaction/dialog_trigger_area.gd" id="6_dialog"] [ext_resource type="Script" uid="uid://cshtdpjp4xy2f" path="res://scenes/Quests/quest_trigger_area.gd" id="7_qtrigger"] [sub_resource type="PhysicsMaterial" id="PhysicsMaterial_2q6dc"] bounce = 0.5 [sub_resource type="SphereShape3D" id="SphereShape3D_2q6dc"] [sub_resource type="SphereMesh" id="SphereMesh_w7c3h"] [sub_resource type="PhysicsMaterial" id="PhysicsMaterial_w8frs"] bounce = 0.5 [sub_resource type="SphereShape3D" id="SphereShape3D_mx8sn"] [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_he7fi"] animation = &"Idle" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_42npc"] animation = &"Idle" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_neck2"] animation = &"Idle" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_bg4jh"] animation = &"Idle" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_43ksg"] animation = &"Jump" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_loupo"] animation = &"Jump" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_1meta"] animation = &"LStrafe" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_i35yb"] animation = &"LStrafeWalk" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_18iqp"] animation = &"LTurn" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_px5jg"] animation = &"LTurn90" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_f2oql"] animation = &"RStrafe" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_8hdhy"] animation = &"RStrafe" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_8ydj0"] animation = &"RStrafeWalk" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_ol8dr"] animation = &"RTurn" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_eorea"] animation = &"RTurn90" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_mwo3k"] animation = &"Run" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_j43p6"] animation = &"Run" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_7qd4n"] animation = &"Walk" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_5wdrc"] animation = &"Walk" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_k13o0"] animation = &"Walk" [sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_pqisa"] animation = &"Walk" [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_5qdlo"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_hwpvo"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_2jvac"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_m443h"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ccri0"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_aqwus"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_tknc3"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_ygago"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_koxac"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_0pp6t"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_3xa5y"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_8m234"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_jnqa2"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_vwq6c"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_e2sp2"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_r45s2"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_p7els"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachineTransition" id="AnimationNodeStateMachineTransition_elh2a"] advance_mode = 2 [sub_resource type="AnimationNodeStateMachine" id="AnimationNodeStateMachine_bwsrl"] states/End/position = Vector2(664, 130) states/Idle/node = SubResource("AnimationNodeAnimation_bg4jh") states/Idle/position = Vector2(318, 57) "states/Idle 2/node" = SubResource("AnimationNodeAnimation_he7fi") "states/Idle 2/position" = Vector2(397, 105) "states/Idle 3/node" = SubResource("AnimationNodeAnimation_42npc") "states/Idle 3/position" = Vector2(312, 279) "states/Idle 4/node" = SubResource("AnimationNodeAnimation_neck2") "states/Idle 4/position" = Vector2(437, 356) states/Jump/node = SubResource("AnimationNodeAnimation_loupo") states/Jump/position = Vector2(282, 356) "states/Jump 2/node" = SubResource("AnimationNodeAnimation_43ksg") "states/Jump 2/position" = Vector2(421, 287) states/LStrafe/node = SubResource("AnimationNodeAnimation_1meta") states/LStrafe/position = Vector2(1401, 100) states/LStrafeWalk/node = SubResource("AnimationNodeAnimation_i35yb") states/LStrafeWalk/position = Vector2(1346, 175) states/LTurn/node = SubResource("AnimationNodeAnimation_18iqp") states/LTurn/position = Vector2(1516, 83) states/LTurn90/node = SubResource("AnimationNodeAnimation_px5jg") states/LTurn90/position = Vector2(1550, 208) states/RStrafe/node = SubResource("AnimationNodeAnimation_8hdhy") states/RStrafe/position = Vector2(856, 161) "states/RStrafe 2/node" = SubResource("AnimationNodeAnimation_f2oql") "states/RStrafe 2/position" = Vector2(956, 208) states/RStrafeWalk/node = SubResource("AnimationNodeAnimation_8ydj0") states/RStrafeWalk/position = Vector2(1181, 155) states/RTurn/node = SubResource("AnimationNodeAnimation_ol8dr") states/RTurn/position = Vector2(1065, 162) states/RTurn90/node = SubResource("AnimationNodeAnimation_eorea") states/RTurn90/position = Vector2(1218, 92) states/Run/node = SubResource("AnimationNodeAnimation_j43p6") states/Run/position = Vector2(293, 225) "states/Run 2/node" = SubResource("AnimationNodeAnimation_mwo3k") "states/Run 2/position" = Vector2(421, 161) states/Start/position = Vector2(156, 121) states/Walk/node = SubResource("AnimationNodeAnimation_pqisa") states/Walk/position = Vector2(414, 57) "states/Walk 2/node" = SubResource("AnimationNodeAnimation_7qd4n") "states/Walk 2/position" = Vector2(303, 111) "states/Walk 3/node" = SubResource("AnimationNodeAnimation_5wdrc") "states/Walk 3/position" = Vector2(312, 175) "states/Walk 4/node" = SubResource("AnimationNodeAnimation_k13o0") "states/Walk 4/position" = Vector2(421, 219) transitions = ["Idle", "Walk", SubResource("AnimationNodeStateMachineTransition_5qdlo"), "Walk 2", "Idle 2", SubResource("AnimationNodeStateMachineTransition_hwpvo"), "Walk 3", "Run 2", SubResource("AnimationNodeStateMachineTransition_2jvac"), "Run", "Walk 4", SubResource("AnimationNodeStateMachineTransition_m443h"), "Start", "Idle", SubResource("AnimationNodeStateMachineTransition_ccri0"), "Start", "Walk 2", SubResource("AnimationNodeStateMachineTransition_aqwus"), "Start", "Walk 3", SubResource("AnimationNodeStateMachineTransition_tknc3"), "Start", "Run", SubResource("AnimationNodeStateMachineTransition_ygago"), "Idle 3", "Jump 2", SubResource("AnimationNodeStateMachineTransition_koxac"), "Jump", "Idle 4", SubResource("AnimationNodeStateMachineTransition_0pp6t"), "Start", "Jump", SubResource("AnimationNodeStateMachineTransition_3xa5y"), "Start", "Idle 3", SubResource("AnimationNodeStateMachineTransition_8m234"), "Walk", "End", SubResource("AnimationNodeStateMachineTransition_jnqa2"), "Idle 2", "End", SubResource("AnimationNodeStateMachineTransition_vwq6c"), "Run 2", "End", SubResource("AnimationNodeStateMachineTransition_e2sp2"), "Walk 4", "End", SubResource("AnimationNodeStateMachineTransition_r45s2"), "Jump 2", "End", SubResource("AnimationNodeStateMachineTransition_p7els"), "Idle 4", "End", SubResource("AnimationNodeStateMachineTransition_elh2a")] [sub_resource type="SphereShape3D" id="SphereShape3D_dialog_zone"] radius = 2.5 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_dialog_zone"] transparency = 1 cull_mode = 2 shading_mode = 0 albedo_color = Color(0.2, 0.8, 0.35, 0.18) [sub_resource type="SphereMesh" id="SphereMesh_dialog_zone"] material = SubResource("StandardMaterial3D_dialog_zone") radius = 2.5 height = 5.0 [sub_resource type="SphereShape3D" id="SphereShape3D_checkpoint"] radius = 3.0 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_checkpoint"] transparency = 1 cull_mode = 2 shading_mode = 0 albedo_color = Color(1, 0.804, 0.204, 0.2) [sub_resource type="SphereMesh" id="SphereMesh_checkpoint"] material = SubResource("StandardMaterial3D_checkpoint") radius = 3.0 height = 6.0 [sub_resource type="BoxShape3D" id="BoxShape3D_2q6dc"] size = Vector3(1080, 2, 1080) [sub_resource type="BoxMesh" id="BoxMesh_w7c3h"] size = Vector3(1080, 2, 1080) [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_fi66n"] [sub_resource type="Sky" id="Sky_a4mo8"] sky_material = SubResource("ProceduralSkyMaterial_fi66n") [sub_resource type="Environment" id="Environment_a4mo8"] background_mode = 2 sky = SubResource("Sky_a4mo8") ambient_light_source = 3 [node name="Node3D" type="Node3D"] script = ExtResource("1_a4mo8") [node name="human" parent="." instance=ExtResource("1_eg4yq")] [node name="RepoBot" parent="." instance=ExtResource("4_repo")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.9426608, 0, -4.4451966) look_target_path = NodePath("../Player") [node name="Thing" type="RigidBody3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -3.7986288) physics_material_override = SubResource("PhysicsMaterial_2q6dc") gravity_scale = 0.0 contact_monitor = true max_contacts_reported = 5 [node name="CollisionShape3D" type="CollisionShape3D" parent="Thing"] shape = SubResource("SphereShape3D_2q6dc") debug_color = Color(0.29772994, 0.6216631, 0.28140613, 0.41960785) [node name="MeshInstance3D" type="MeshInstance3D" parent="Thing"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) mesh = SubResource("SphereMesh_w7c3h") [node name="Player" type="RigidBody3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.6563287, 0, 0) physics_material_override = SubResource("PhysicsMaterial_w8frs") script = ExtResource("1_muv8p") camera_path = NodePath("Camera3D") phone_path = NodePath("../PhoneUI") [node name="TestCharAnimated" parent="Player" instance=ExtResource("5_fi66n")] transform = Transform3D(-0.9998549, 0, 0.01703362, 0, 1, 0, -0.01703362, 0, -0.9998549, 0, 0, 0) [node name="CollisionShape3D" type="CollisionShape3D" parent="Player"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0) shape = SubResource("SphereShape3D_mx8sn") [node name="Camera3D" type="Camera3D" parent="Player"] transform = Transform3D(0.9989785, -4.651856e-10, -0.045188628, 0.006969331, 0.9880354, 0.15407, 0.044647958, -0.15422754, 0.9870261, 0.22036135, 1.8988357, 0.64972365) current = true fov = 49.0 [node name="SpotLight3D" type="SpotLight3D" parent="Player"] [node name="AnimationTree" type="AnimationTree" parent="Player"] root_node = NodePath("../TestCharAnimated") tree_root = SubResource("AnimationNodeStateMachine_bwsrl") anim_player = NodePath("../TestCharAnimated/AnimationPlayer") [node name="Car" parent="." instance=ExtResource("5_car")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0, -3) [node name="DialogZone" type="Area3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.5, 0, -2.5) script = ExtResource("6_dialog") prompt_text = "Press E to inspect area" dialog_text = "Dialog trigger area" [node name="CollisionShape3D" type="CollisionShape3D" parent="DialogZone"] shape = SubResource("SphereShape3D_dialog_zone") [node name="Visual" type="MeshInstance3D" parent="DialogZone"] mesh = SubResource("SphereMesh_dialog_zone") [node name="AutoDialogZone" type="Area3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4, 0, -6.5) script = ExtResource("6_dialog") dialog_text = "Auto dialog trigger" auto_popup = true auto_popup_close_on_exit = true [node name="CollisionShape3D" type="CollisionShape3D" parent="AutoDialogZone"] shape = SubResource("SphereShape3D_dialog_zone") [node name="Visual" type="MeshInstance3D" parent="AutoDialogZone"] transform = Transform3D(0.8, 0, 0, 0, 0.8, 0, 0, 0, 0.8, 0, 0, 0) mesh = SubResource("SphereMesh_dialog_zone") [node name="QuestCheckpoint" type="Area3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9, 0, -10) script = ExtResource("7_qtrigger") event_name = &"reach_checkpoint" target_group = &"vehicle" quest_id_filter = "first_drive" [node name="CollisionShape3D" type="CollisionShape3D" parent="QuestCheckpoint"] shape = SubResource("SphereShape3D_checkpoint") [node name="Visual" type="MeshInstance3D" parent="QuestCheckpoint"] mesh = SubResource("SphereMesh_checkpoint") [node name="Ground" type="StaticBody3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0) [node name="CollisionShape3D" type="CollisionShape3D" parent="Ground"] shape = SubResource("BoxShape3D_2q6dc") [node name="MeshInstance3D" type="MeshInstance3D" parent="Ground"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00053596497, 0.0075991154, -0.0019865036) mesh = SubResource("BoxMesh_w7c3h") [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] transform = Transform3D(1, 0, 0, 0, 0.5, 0.8660253, 0, -0.8660253, 0.5, 0, 34, 0) shadow_enabled = true [node name="Starter Blocks" type="Node3D" parent="."] [node name="Block" parent="Starter Blocks" instance=ExtResource("2_tc7dm")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.298158, -7.0724635) [node name="Block2" parent="Starter Blocks" instance=ExtResource("2_tc7dm")] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.63255787, 2.596316, -6.980046) [node name="Menu" type="CanvasLayer" parent="."] process_mode = 3 visible = false script = ExtResource("3_tc7dm") [node name="Control" type="Control" parent="Menu"] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 size_flags_horizontal = 4 size_flags_vertical = 4 [node name="VBoxContainer" type="VBoxContainer" parent="Menu/Control"] layout_mode = 1 anchors_preset = 8 anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 offset_left = -39.5 offset_top = -33.0 offset_right = 39.5 offset_bottom = 33.0 grow_horizontal = 2 grow_vertical = 2 [node name="ContinueButton" type="Button" parent="Menu/Control/VBoxContainer"] layout_mode = 2 text = "Continue" [node name="MainMenuButton" type="Button" parent="Menu/Control/VBoxContainer"] layout_mode = 2 text = "Main Menu" [node name="QuitButton" type="Button" parent="Menu/Control/VBoxContainer"] layout_mode = 2 text = "Quit" [node name="PhoneUI" type="CanvasLayer" parent="."] layer = 5 visible = false [node name="Control" type="Control" parent="PhoneUI"] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 [node name="PhoneFrame" type="ColorRect" parent="PhoneUI/Control"] layout_mode = 1 anchors_preset = 8 anchor_left = 0.5 anchor_top = 0.5 anchor_right = 0.5 anchor_bottom = 0.5 offset_left = -180.0 offset_top = -320.0 offset_right = 180.0 offset_bottom = 320.0 grow_horizontal = 2 grow_vertical = 2 color = Color(0.08, 0.08, 0.1, 1) [node name="QuestTitle" type="Label" parent="PhoneUI/Control/PhoneFrame"] layout_mode = 0 offset_left = 18.0 offset_top = 18.0 offset_right = 150.0 offset_bottom = 41.0 text = "Quest Log" [node name="QuestText" type="RichTextLabel" parent="PhoneUI/Control/PhoneFrame"] layout_mode = 0 offset_left = 18.0 offset_top = 52.0 offset_right = 344.0 offset_bottom = 613.0 bbcode_enabled = true text = "No active quest." scroll_active = false [node name="WorldEnvironment" type="WorldEnvironment" parent="."] environment = SubResource("Environment_a4mo8") [connection signal="pressed" from="Menu/Control/VBoxContainer/ContinueButton" to="Menu" method="_on_continue_button_pressed"] [connection signal="pressed" from="Menu/Control/VBoxContainer/MainMenuButton" to="Menu" method="_on_main_menu_button_pressed"] [connection signal="pressed" from="Menu/Control/VBoxContainer/QuitButton" to="Menu" method="_on_quit_button_pressed"] [editable path="Player/TestCharAnimated"]