diff --git a/src/base-environments/youth_room/youth_room.tscn b/src/base-environments/youth_room/youth_room.tscn index ff35d2c..0c6614f 100644 --- a/src/base-environments/youth_room/youth_room.tscn +++ b/src/base-environments/youth_room/youth_room.tscn @@ -1,11 +1,13 @@ -[gd_scene load_steps=48 format=3 uid="uid://b3b0gyvklqn50"] +[gd_scene load_steps=53 format=3 uid="uid://b3b0gyvklqn50"] [ext_resource type="Script" path="res://base-environments/youth_room/room_handle.gd" id="1_aitp0"] [ext_resource type="PackedScene" uid="uid://c0i4ydmxtxfho" path="res://base-environments/youth_room/import/youth_room.glb" id="1_jf3oi"] [ext_resource type="AudioStream" uid="uid://1h6k2d8q1kw3" path="res://base-environments/youth_room/import/sounds/rain_on_window.mp3" id="2_3haaq"] +[ext_resource type="Texture2D" uid="uid://d0ucjqi8tx6vt" path="res://import/interface-elements/frame.png" id="2_21x33"] [ext_resource type="Texture2D" uid="uid://cs6gtn285a4al" path="res://dev-util/logo_background.png" id="3_1mw2j"] [ext_resource type="PackedScene" uid="uid://mkccbig41bqb" path="res://logic-scenes/player_controller/player_controller.tscn" id="3_foj4y"] [ext_resource type="AudioStream" uid="uid://bbpo1hu35yer8" path="res://base-environments/youth_room/import/sounds/thunder.mp3" id="3_wcypa"] +[ext_resource type="Texture2D" uid="uid://bwicl5q0lw06q" path="res://import/interface-elements/bottom.png" id="3_xqd4w"] [ext_resource type="AudioStream" uid="uid://cudna8k7fw06t" path="res://base-environments/youth_room/audio/Moving Loop.wav" id="8_egnow"] [ext_resource type="AudioStream" uid="uid://bwh60165c3saj" path="res://base-environments/youth_room/audio/lisa_youth_voice.ogg" id="9_dqdgk"] [ext_resource type="AudioStream" uid="uid://cl74a68tjwinh" path="res://base-environments/youth_room/audio/Youth Loop.wav" id="9_i8mqk"] @@ -15,7 +17,8 @@ [ext_resource type="PackedScene" uid="uid://d3pb25xuef2t2" path="res://logic-scenes/collectable/collectable_ui.tscn" id="11_jxai0"] [ext_resource type="PackedScene" uid="uid://bdnesuqroi7ss" path="res://vfx/collectable_particles.tscn" id="12_qxx2k"] [ext_resource type="Texture2D" uid="uid://d005qvnbnishb" path="res://import/interface-elements/cursor_grab.png" id="13_lqj71"] -[ext_resource type="Script" path="res://base-environments/youth_room/catch_all.gd" id="16_tddlc"] +[ext_resource type="PackedScene" uid="uid://brk4hjdf2x81a" path="res://logic-scenes/card_picker/card_picker.tscn" id="19_a4n1o"] +[ext_resource type="ArrayMesh" uid="uid://bfc3d4g40n0wy" path="res://logic-scenes/collectable/import/old-mask.res" id="19_jr2bb"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_kcdrx"] sky_top_color = Color(0, 0, 1, 1) @@ -64,10 +67,28 @@ adjustment_enabled = true [sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_26mp0"] auto_exposure_enabled = true auto_exposure_scale = 0.2 +dof_blur_far_enabled = true +dof_blur_far_distance = 0.4 +dof_blur_far_transition = 0.2 dof_blur_near_distance = 0.79 -dof_blur_amount = 0.4 +dof_blur_amount = 0.0 auto_exposure_min_sensitivity = 100.0 +[sub_resource type="GDScript" id="GDScript_wb8kg"] +script/source = "extends WorldEnvironment + +func _ready(): + focus_env() + +func focus_env(): + var dof_strength_tween: Tween = create_tween() + dof_strength_tween.tween_property(camera_attributes, \"dof_blur_amount\", 0, 1) + +func focus_object(): + var dof_strength_tween: Tween = create_tween() + dof_strength_tween.tween_property(camera_attributes, \"dof_blur_amount\", 0.6, 1) +" + [sub_resource type="GDScript" id="GDScript_35dmj"] script/source = "extends SpotLight3D @@ -94,6 +115,10 @@ func _process(delta): func switch_on(): var tween:Tween = create_tween() tween.tween_property(self, \"litnes\", 1, 10) + +func switch_off(): + var tween:Tween = create_tween() + tween.tween_property(self, \"litnes\", 0, 1) " [sub_resource type="GDScript" id="GDScript_xqa3d"] @@ -136,7 +161,7 @@ tracks/0/keys = { tracks/1/type = "method" tracks/1/imported = false tracks/1/enabled = true -tracks/1/path = NodePath("SpotLight3D") +tracks/1/path = NodePath("desk_light") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { @@ -148,6 +173,36 @@ tracks/1/keys = { }] } +[sub_resource type="Animation" id="Animation_wa80i"] +resource_name = "lights_out" +length = 2.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("OmniLight3D2:light_energy") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 2), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [1.0, 0.0] +} +tracks/1/type = "method" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("desk_light") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"switch_off" +}] +} + [sub_resource type="Animation" id="Animation_upogh"] resource_name = "menu" tracks/0/type = "value" @@ -160,13 +215,14 @@ tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, -"values": [1.0] +"values": [0.0] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_k8op5"] _data = { "RESET": SubResource("Animation_hqls1"), "light_up": SubResource("Animation_hxk3n"), +"lights_out": SubResource("Animation_wa80i"), "menu": SubResource("Animation_upogh") } @@ -232,6 +288,78 @@ tracks/4/keys = { "update": 0, "values": [0.0] } +tracks/5/type = "value" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer/Label:visible_ratio") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.0] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer:scroll_vertical") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer:mouse_filter") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1] +} +tracks/8/type = "value" +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer:custom_minimum_size") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(800, 750)] +} +tracks/9/type = "value" +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/path = NodePath("AudioPlayer/childhood:modulate") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 0)] +} +tracks/10/type = "value" +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/path = NodePath("AudioPlayer/childhood/PanelContainer:self_modulate") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 1)] +} [sub_resource type="Animation" id="Animation_g5l1m"] resource_name = "childhood" @@ -275,6 +403,92 @@ tracks/2/keys = { "times": PackedFloat32Array(1.6) } tracks/2/use_blend = true +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer/Label:visible_ratio") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0.3, 0.8, 3, 14.6, 17.2, 26.4, 28.6, 36.3, 36.8, 50.0759, 51, 53.4, 54.7, 60.8, 61.7, 66.8, 67.8, 74.7, 76.6, 78.3, 81, 81.6, 87.2), +"transitions": PackedFloat32Array(1, 1, 0.615572, 1, 0.435275, 1, 0.615572, 1, 0.594604, 1, 0.378929, 1, 0.63728, 1, 0.535887, 1, 1, 1, 0.435275, 0.63728, 1, 1, 1), +"update": 0, +"values": [0.0, 0.014, 0.014, 0.15, 0.153, 0.287, 0.287, 0.38, 0.38, 0.528, 0.528, 0.563, 0.563, 0.663, 0.663, 0.746, 0.746, 0.859, 0.859, 0.876, 0.92, 0.92, 1.0] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer:scroll_vertical") +tracks/4/interp = 2 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(74.8, 76.2), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [0, 74] +} +tracks/5/type = "value" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer:mouse_filter") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(0, 90), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [2, 0] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer:custom_minimum_size") +tracks/6/interp = 2 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0, 0.4), +"transitions": PackedFloat32Array(0.466516, 1), +"update": 0, +"values": [Vector2(800, 750), Vector2(800, 800)] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("AudioPlayer/childhood:modulate") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0, 0.4, 91.7, 92.6), +"transitions": PackedFloat32Array(1, 1, 1.93187, 1), +"update": 0, +"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(1, 1, 1, 0)] +} +tracks/8/type = "value" +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/path = NodePath("AudioPlayer/childhood/PanelContainer:self_modulate") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/keys = { +"times": PackedFloat32Array(89.3, 91.8), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)] +} +tracks/9/type = "method" +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/path = NodePath(".") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/keys = { +"times": PackedFloat32Array(91.9), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"_on_childhood_done" +}] +} [sub_resource type="Animation" id="Animation_as75l"] resource_name = "childhood_intro" @@ -561,17 +775,19 @@ _data = { [sub_resource type="GDScript" id="GDScript_tfc2r"] script/source = "extends AnimationPlayer - func start_soundtrack(): $Moving.play(70) $Childhood.play(70) $VoiceTraining.play(70) + +func _on_childhood_collected(): + play(\"childhood\") " [sub_resource type="BoxShape3D" id="BoxShape3D_cb3g8"] size = Vector3(1.81843, 2.13395, 0.0774798) -[sub_resource type="ViewportTexture" id="ViewportTexture_gwx6q"] +[sub_resource type="ViewportTexture" id="ViewportTexture_7hana"] viewport_path = NodePath("Collectable/UiWrapper/UiSprite/SubViewport") [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_72g2i"] @@ -620,6 +836,9 @@ size = Vector3(1, 0.305693, 0.775269) [node name="youth room" type="Node3D"] script = ExtResource("1_aitp0") +[node name="picker" parent="." instance=ExtResource("19_a4n1o")] +visible = false + [node name="youth_room" parent="." instance=ExtResource("1_jf3oi")] [node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="youth_room"] @@ -640,9 +859,10 @@ bus = &"sfx" [node name="WorldEnvironment" type="WorldEnvironment" parent="."] environment = SubResource("Environment_pllnm") camera_attributes = SubResource("CameraAttributesPractical_26mp0") +script = SubResource("GDScript_wb8kg") -[node name="SpotLight3D" type="SpotLight3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 0.416868, 0.908967, 0, -0.908967, 0.416868, -0.599038, 1.39757, 1.64821) +[node name="desk_light" type="SpotLight3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 0.30009, 0.953911, 0, -0.953911, 0.30009, -0.599038, 1.39757, 1.64821) light_color = Color(0.94902, 0.737255, 0.627451, 1) light_energy = 8.0 light_size = 0.1 @@ -653,7 +873,7 @@ spot_angle = 58.1539 spot_angle_attenuation = 0.812252 script = SubResource("GDScript_35dmj") -[node name="OmniLight3D" type="OmniLight3D" parent="SpotLight3D"] +[node name="OmniLight3D" type="OmniLight3D" parent="desk_light"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.127422, -0.00326544, -0.389614) light_color = Color(0.952941, 0.662745, 0.54902, 1) light_energy = 0.5 @@ -664,7 +884,7 @@ shadow_blur = 0.5 omni_range = 5.48365 omni_attenuation = 0.90125 -[node name="OmniLight3D2" type="OmniLight3D" parent="SpotLight3D"] +[node name="OmniLight3D2" type="OmniLight3D" parent="desk_light"] light_color = Color(0.94902, 0.737255, 0.627451, 1) light_energy = 0.5 omni_range = 0.147682 @@ -783,10 +1003,9 @@ libraries = { } [node name="PlayerController" parent="." groups=["camera_owner"] instance=ExtResource("3_foj4y")] -transform = Transform3D(0.686123, 0, 0.727485, 0, 1, 0, -0.727485, 0, 0.686123, 1.14815, 1.19209e-07, 0.730062) +transform = Transform3D(0.686123, 0, 0.727485, 0, 1, 0, -0.727485, 0, 0.686123, 1.04786, 2.38418e-07, 1.14663) [node name="AudioPlayer" type="AnimationPlayer" parent="."] -autoplay = "RESET" libraries = { "": SubResource("AnimationLibrary_ilekd") } @@ -804,6 +1023,78 @@ bus = &"music" stream = ExtResource("9_i8mqk") bus = &"music" +[node name="childhood" type="CenterContainer" parent="AudioPlayer"] +modulate = Color(1, 1, 1, 0) +self_modulate = Color(1, 1, 1, 0.923078) +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_right = -424.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="PanelContainer" type="PanelContainer" parent="AudioPlayer/childhood"] +layout_mode = 2 + +[node name="StartFrame" type="TextureRect" parent="AudioPlayer/childhood/PanelContainer"] +custom_minimum_size = Vector2(0, 900) +layout_mode = 2 +size_flags_vertical = 0 +texture = ExtResource("2_21x33") +expand_mode = 2 +stretch_mode = 4 + +[node name="Panel" type="PanelContainer" parent="AudioPlayer/childhood/PanelContainer/StartFrame"] +show_behind_parent = true +layout_mode = 2 +offset_left = 199.0 +offset_top = -112.0 +offset_right = 1039.0 +offset_bottom = 697.0 +rotation = 0.459022 + +[node name="VBoxContainer" type="VBoxContainer" parent="AudioPlayer/childhood/PanelContainer"] +layout_mode = 2 + +[node name="Label" type="Label" parent="AudioPlayer/childhood/PanelContainer/VBoxContainer"] +layout_mode = 2 +theme_type_variation = &"HeaderLarge" +text = " Childhood" + +[node name="ScrollContainer" type="ScrollContainer" parent="AudioPlayer/childhood/PanelContainer/VBoxContainer"] +custom_minimum_size = Vector2(800, 750) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +horizontal_scroll_mode = 0 +vertical_scroll_mode = 3 + +[node name="Label" type="Label" parent="AudioPlayer/childhood/PanelContainer/VBoxContainer/ScrollContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +text = "Oh, my old mask. I have so many good memories about theatre club. I would stand on my bed for entire afternoons, weeks on end, practicing my lines. Pretending to be on the big stage ... my mom would get mad at me, when she had to call me three or four times for dinner. I just … didn’t like the interruptions. We both were often mad at each other. + +Dinner was difficult. I just couldn’t bring myself to eat, because I couldn’t deal with the bread and my mom. She was always so worried. ‘Lisa, you forgot your homework, Lisa why won’t you play with the other girls, Lisa why didn’t Steffi invite you to her birthday, Lisa this, Lisa that.’ + +But I was fine. She just wouldn’t listen. +Yes, I didn’t do homework, but my teachers didn’t mind it as much with me - which the other kids wouldn’t shut up about. But like … they also made fun of me reading school books and talking to my teachers during breaks. + +But at least I could fucking talk to teachers and they had stuff to say. Mr Thomas probably even understood me better than my own mom. + +He said I was gifted. He said I just didn’t need homework for good grades. And he also made sure to always include extra credits. So my silly slip-ups wouldn’t get me a B." +autowrap_mode = 3 +visible_characters = 0 +visible_characters_behavior = 1 +visible_ratio = 0.0 + +[node name="StartBottom" type="TextureRect" parent="AudioPlayer/childhood/PanelContainer/VBoxContainer"] +custom_minimum_size = Vector2(0, 64) +layout_mode = 2 +size_flags_vertical = 8 +texture = ExtResource("3_xqd4w") +expand_mode = 2 +stretch_mode = 4 + [node name="VoiceTraining" type="AudioStreamPlayer" parent="AudioPlayer"] stream = ExtResource("10_wwwdq") bus = &"music" @@ -816,7 +1107,7 @@ bus = &"music" bus = &"music" [node name="Collectable" type="Area3D" parent="." groups=["collectables"]] -transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -0.940637, 1.34703, 0.817837) +transform = Transform3D(-0.863025, 0, 0.50516, 0, 1, 0, -0.50516, 0, -0.863025, 0.121309, 0.803665, 2.4765) collision_layer = 16 script = ExtResource("11_6fwv8") @@ -824,8 +1115,7 @@ script = ExtResource("11_6fwv8") transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00898492, -0.14171, 0.152755) [node name="UiWrapper" type="Area3D" parent="Collectable"] -transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, -2.38419e-07, 0, 0.071894) -visible = false +transform = Transform3D(0.1, -1.86265e-09, 0, 0, 0.0906676, 0.0421827, 0, -0.0421827, 0.0906676, -2.38419e-07, 0, 0.0718942) script = ExtResource("11_7uxd8") [node name="UI_click_collider" type="CollisionShape3D" parent="Collectable/UiWrapper"] @@ -836,7 +1126,7 @@ shape = SubResource("BoxShape3D_cb3g8") transform = Transform3D(1, 0, 2.4869e-14, 0, 1, 0, -2.4869e-14, 0, 1, 0, 0, 0.610758) pixel_size = 0.015 no_depth_test = true -texture = SubResource("ViewportTexture_gwx6q") +texture = SubResource("ViewportTexture_7hana") [node name="SubViewport" type="SubViewport" parent="Collectable/UiWrapper/UiSprite"] transparent_bg = true @@ -844,6 +1134,7 @@ size = Vector2i(300, 350) render_target_update_mode = 4 [node name="Collectable_ui" parent="Collectable/UiWrapper/UiSprite/SubViewport" instance=ExtResource("11_jxai0")] +visible = false is_story = true item_name = "my old Mask" content_notes = "CN: testing testing 123" @@ -917,6 +1208,7 @@ grow_vertical = 2 mouse_filter = 1 [node name="Mouse" type="CenterContainer" parent="SceneUI"] +visible = false layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 @@ -925,15 +1217,33 @@ grow_horizontal = 2 grow_vertical = 2 [node name="TextureRect" type="TextureRect" parent="SceneUI/Mouse"] +visible = false layout_mode = 2 texture = ExtResource("13_lqj71") -[node name="catch_all" type="Node3D" parent="."] -script = ExtResource("16_tddlc") +[node name="old-mask" type="Node3D" parent="."] + +[node name="old_mask" type="MeshInstance3D" parent="old-mask"] +transform = Transform3D(-0.51156, -0.746323, -0.425804, 0.144568, -0.563249, 0.813542, -0.846999, 0.354618, 0.396029, -0.0221631, 0.492276, 2.56703) +mesh = ExtResource("19_jr2bb") +skeleton = NodePath("") + +[node name="OmniLight3D" type="OmniLight3D" parent="old-mask/old_mask"] +transform = Transform3D(1, -3.8743e-07, 5.96046e-08, 3.57628e-07, 1, 8.9407e-08, -5.96046e-08, -8.9407e-08, 1, 0.083235, -0.219628, 0.176047) +light_color = Color(0.972549, 0.752941, 0.592157, 1) +light_energy = 0.1 +light_specular = 0.0 +omni_range = 0.457129 +omni_attenuation = 0.659754 [connection signal="ui_entered" from="PlayerController" to="SceneUI" method="show"] [connection signal="ui_exited" from="PlayerController" to="SceneUI" method="hide"] +[connection signal="animation_finished" from="AudioPlayer" to="PlayerController" method="_on_childhood_done"] [connection signal="input_event" from="Collectable/UiWrapper" to="Collectable/UiWrapper" method="_on_input_event" flags=18] +[connection signal="card_collected" from="Collectable/UiWrapper/UiSprite/SubViewport/Collectable_ui" to="." method="_on_childhood_collected"] +[connection signal="card_collected" from="Collectable/UiWrapper/UiSprite/SubViewport/Collectable_ui" to="WorldEnvironment" method="focus_object"] +[connection signal="card_collected" from="Collectable/UiWrapper/UiSprite/SubViewport/Collectable_ui" to="PlayerController" method="_on_childhood_collected"] +[connection signal="card_collected" from="Collectable/UiWrapper/UiSprite/SubViewport/Collectable_ui" to="AudioPlayer" method="_on_childhood_collected"] [connection signal="body_entered" from="Bed and Ladders/ladder_trigger" to="PlayerController" method="_on_bed_enter"] [connection signal="body_entered" from="Bed and Ladders/ladder_trigger" to="Bed and Ladders/ladder" method="raise"] [connection signal="body_exited" from="Bed and Ladders/ladder_reset" to="PlayerController" method="_on_bed_exit"] diff --git a/src/logic-scenes/collectable/import/old-mask.glb.import b/src/logic-scenes/collectable/import/old-mask.glb.import index 905b06f..b3d2843 100644 --- a/src/logic-scenes/collectable/import/old-mask.glb.import +++ b/src/logic-scenes/collectable/import/old-mask.glb.import @@ -34,6 +34,18 @@ _subresources={ "use_external/enabled": true, "use_external/path": "res://base-environments/youth_room/import/materials/desk-utilities.tres" } +}, +"meshes": { +"old-mask_old_mask": { +"generate/lightmap_uv": 0, +"generate/lods": 0, +"generate/shadow_meshes": 0, +"lods/normal_merge_angle": 60.0, +"lods/normal_split_angle": 25.0, +"save_to_file/enabled": true, +"save_to_file/make_streamable": "", +"save_to_file/path": "res://logic-scenes/collectable/import/old-mask.res" +} } } gltf/embedded_image_handling=1 diff --git a/src/logic-scenes/collectable/import/old-mask.res b/src/logic-scenes/collectable/import/old-mask.res new file mode 100644 index 0000000..2447d03 Binary files /dev/null and b/src/logic-scenes/collectable/import/old-mask.res differ diff --git a/src/logic-scenes/player_controller/player_controller.tscn b/src/logic-scenes/player_controller/player_controller.tscn index 1832b4e..387a0ad 100644 --- a/src/logic-scenes/player_controller/player_controller.tscn +++ b/src/logic-scenes/player_controller/player_controller.tscn @@ -1,10 +1,18 @@ -[gd_scene load_steps=8 format=3 uid="uid://mkccbig41bqb"] +[gd_scene load_steps=11 format=3 uid="uid://mkccbig41bqb"] [ext_resource type="Script" path="res://logic-scenes/player_controller/player_controller.gd" id="1_0b4mi"] +[ext_resource type="ArrayMesh" uid="uid://bfc3d4g40n0wy" path="res://logic-scenes/collectable/import/old-mask.res" id="2_vnej0"] [sub_resource type="PhysicsMaterial" id="10"] friction = 0.0 +[sub_resource type="GDScript" id="GDScript_r0b38"] +script/source = "extends MeshInstance3D + +func _process(delta): + rotate_y(delta/3) +" + [sub_resource type="SphereShape3D" id="8"] radius = 0.307047 @@ -34,6 +42,114 @@ tracks/1/keys = { "update": 0, "values": [Vector3(0, 0, 0)] } +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Yaw/Pitch/Mount/Camera3D/memory mount/old_mask2:rotation") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(5.96046e-08, 1.74846e-07, -7.10543e-15)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("Yaw/Pitch/Mount/Camera3D/memory mount:position") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0.11067, -0.0251684, -0.309266)] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("Yaw/Pitch/Mount/Camera3D/memory mount:rotation") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(1.49012e-07, 0, 0)] +} +tracks/5/type = "value" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D:light_energy") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.4] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D2:light_energy") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [1.5] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D:visible") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} +tracks/8/type = "value" +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D2:layers") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1] +} +tracks/9/type = "value" +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D2:visible") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} +tracks/10/type = "value" +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/path = NodePath("Yaw/Pitch/Mount/Camera3D/memory mount/old_mask2:visible") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} [sub_resource type="Animation" id="12"] resource_name = "crouch" @@ -63,6 +179,106 @@ tracks/1/keys = { "values": [Vector3(0, 0, 0), Vector3(-30, 0, -10), Vector3(-20, 0, 3), Vector3(0, 0, 0), Vector3(0, 0, 0)] } +[sub_resource type="Animation" id="Animation_5o0sk"] +resource_name = "mask_reveal" +length = 3.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Yaw/Pitch/Mount/Camera3D/memory mount:position") +tracks/0/interp = 2 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 3), +"transitions": PackedFloat32Array(0.366021, 1), +"update": 0, +"values": [Vector3(0.376781, -0.521269, -0.513588), Vector3(0.18, -0.025, -0.309)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("Yaw/Pitch/Mount/Camera3D/memory mount:rotation") +tracks/1/interp = 2 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 3), +"transitions": PackedFloat32Array(1, 0.378929), +"update": 0, +"values": [Vector3(0, -0.698132, 0), Vector3(1.49012e-07, 0, 0)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D:light_energy") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0.8, 3), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [0.0, 0.4] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D2:light_energy") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0.2, 3), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [0.0, 1.5] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D:visible") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0, 0.1), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [false, true] +} +tracks/5/type = "value" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D2:layers") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("Yaw/Pitch/Mount/Camera3D/SpotLight3D2:visible") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0, 0.1), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [false, true] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("Yaw/Pitch/Mount/Camera3D/memory mount/old_mask2:visible") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0, 0.1), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [false, true] +} + [sub_resource type="Animation" id="14"] resource_name = "stand_up" length = 3.0 @@ -95,6 +311,7 @@ tracks/1/keys = { _data = { "RESET": SubResource("11"), "crouch": SubResource("12"), +"mask_reveal": SubResource("Animation_5o0sk"), "stand_up": SubResource("14") } @@ -126,12 +343,49 @@ collision_mask = 17 collide_with_areas = true collide_with_bodies = false +[node name="memory mount" type="Node3D" parent="Yaw/Pitch/Mount/Camera3D"] +transform = Transform3D(0.8, 0, 0, 0, 0.8, -7.15258e-08, 0, 1.1921e-07, 0.48, 0.11067, -0.0251684, -0.309266) + +[node name="old_mask2" type="MeshInstance3D" parent="Yaw/Pitch/Mount/Camera3D/memory mount"] +transform = Transform3D(1, 1.75271e-14, 1.74846e-07, -7.10543e-15, 1, -5.96046e-08, -1.74846e-07, 5.96046e-08, 1, 0.0250661, 0, 0) +visible = false +mesh = ExtResource("2_vnej0") +skeleton = NodePath("") +script = SubResource("GDScript_r0b38") + +[node name="OmniLight3D" type="OmniLight3D" parent="Yaw/Pitch/Mount/Camera3D/memory mount/old_mask2"] +transform = Transform3D(1, -3.8743e-07, 5.96046e-08, 3.57628e-07, 1, 8.9407e-08, -5.96046e-08, -8.9407e-08, 1, 0.083235, -0.219628, 0.176047) +light_color = Color(0.972549, 0.752941, 0.592157, 1) +light_energy = 0.1 +light_specular = 0.0 +omni_range = 0.457129 +omni_attenuation = 0.659754 + +[node name="SpotLight3D" type="SpotLight3D" parent="Yaw/Pitch/Mount/Camera3D"] +transform = Transform3D(0.584488, 0.621177, -0.522028, 0.363951, 0.374307, 0.852897, 0.725199, -0.688501, -0.00729993, 0.0601956, 0.21754, -0.271749) +visible = false +light_color = Color(0.97599, 0.669299, 0.509314, 1) +light_energy = 0.4 +light_size = 0.1 +shadow_enabled = true +spot_range = 0.394683 +spot_angle = 27.7927 + +[node name="SpotLight3D2" type="SpotLight3D" parent="Yaw/Pitch/Mount/Camera3D"] +transform = Transform3D(0.456583, 0.0747244, 0.886537, 0.819566, -0.423063, -0.386432, 0.346185, 0.903014, -0.254405, 0.475638, -0.147216, -0.329875) +visible = false +light_color = Color(0.317647, 0.427451, 1, 1) +light_energy = 1.5 +light_size = 0.1 +shadow_enabled = true +spot_range = 0.624277 +spot_angle = 22.1657 + [node name="PlayerCollision" type="CollisionShape3D" parent="."] transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0.322255, 0) shape = SubResource("8") [node name="PlayerAnimationPlayer" type="AnimationPlayer" parent="."] -autoplay = "RESET" libraries = { "": SubResource("AnimationLibrary_xbx3w") }