diff --git a/src/base-environments/youth_room/room_handle.gd b/src/base-environments/youth_room/room_handle.gd index 829a90f..a9eac3e 100644 --- a/src/base-environments/youth_room/room_handle.gd +++ b/src/base-environments/youth_room/room_handle.gd @@ -11,8 +11,8 @@ signal ini_room @onready var card_board: CardBoard = %Board @onready var card_picker: CardPicker = %Picker -func start(save: SaveGame = SaveGame.new()): - save_game = save +func start_room(): + save_game = State.active_save_game # Setting Memento user interface elemnts as collected based on the savegame. mask_memento.collected = save_game.mementos_complete && 1 >> Scenes.id.YOUTH_CHILDHOOD > 0 @@ -34,7 +34,7 @@ func get_ready(): func _ready(): if get_parent() == get_tree().root: get_ready() - start() + start_room() card_picker.cards_picked.connect(card_board.populate_board) func pull_save_state(save: SaveGame) -> void: diff --git a/src/base-environments/youth_room/youth_room.tscn b/src/base-environments/youth_room/youth_room.tscn index fb3ced5..e04874f 100644 --- a/src/base-environments/youth_room/youth_room.tscn +++ b/src/base-environments/youth_room/youth_room.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=131 format=4 uid="uid://b3b0gyvklqn50"] +[gd_scene load_steps=133 format=4 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"] @@ -28,6 +28,7 @@ [ext_resource type="PackedScene" uid="uid://dvwuhobhka78d" path="res://logic-scenes/misc/skip_control.tscn" id="15_7nc4e"] [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"] +[ext_resource type="FontFile" uid="uid://b231f0liphck" path="res://import/fonts/AtkinsonHyperlegible-Regular.ttf" id="20_pyf88"] [ext_resource type="PackedScene" uid="uid://dwtxjvprjyx8p" path="res://base-environments/youth_room/lava-lamp.tscn" id="21_0k2gr"] [ext_resource type="AudioStream" uid="uid://bghjiqkyehs1p" path="res://base-environments/youth_room/import/sounds/rain and thunder.mp3" id="22_xrkbj"] [ext_resource type="PackedScene" uid="uid://bpjympn3ps3wo" path="res://logic-scenes/luna/luna_imported.tscn" id="27_pb1jl"] @@ -1780,6 +1781,18 @@ scale_curve = SubResource("CurveTexture_cg0w1") color_ramp = SubResource("GradientTexture1D_xxq8p") turbulence_noise_strength = 0.1 +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mlcq6"] +bg_color = Color(0.82, 0.785013, 0.2952, 1) +border_width_left = 10 +border_width_top = 10 +border_width_right = 10 +border_width_bottom = 10 +border_color = Color(0.82, 0.785013, 0.2952, 1) +corner_radius_top_left = 10 +corner_radius_top_right = 10 +corner_radius_bottom_right = 10 +corner_radius_bottom_left = 10 + [sub_resource type="BoxShape3D" id="BoxShape3D_cb3g8"] size = Vector3(1.81843, 2.13395, 0.0774798) @@ -2216,7 +2229,6 @@ ambient_light_source = 3 ambient_light_color = Color(1, 1, 1, 1) reflected_light_source = 1 tonemap_mode = 2 -ssr_enabled = true ssr_max_steps = 512 ssr_depth_tolerance = 0.01 ssao_enabled = true @@ -2231,7 +2243,7 @@ ssil_normal_rejection = 0.8 sdfgi_enabled = true sdfgi_use_occlusion = true sdfgi_read_sky_light = false -sdfgi_min_cell_size = 0.0664062 +sdfgi_min_cell_size = 0.00976562 glow_enabled = true glow_levels/2 = 0.3 glow_levels/7 = 2.0 @@ -2719,6 +2731,7 @@ stretch_mode = 4 [node name="skip_control" parent="logic/ScenePlayer/childhood/PanelContainer" instance=ExtResource("15_7nc4e")] layout_mode = 2 +costum_owner = NodePath("../..") [node name="VoiceTraining" type="AudioStreamPlayer" parent="logic/ScenePlayer"] stream = ExtResource("10_wwwdq") @@ -2808,6 +2821,7 @@ stretch_mode = 4 [node name="skip_control2" parent="logic/ScenePlayer/Voice Training/PanelContainer" instance=ExtResource("15_7nc4e")] layout_mode = 2 +costum_owner = NodePath("../..") [node name="Jui_Jutsu" type="AudioStreamPlayer" parent="logic/ScenePlayer"] bus = &"music" @@ -2824,6 +2838,7 @@ grow_horizontal = 2 grow_vertical = 2 [node name="PanelContainer" type="PanelContainer" parent="logic/ScenePlayer/jui_jutsu"] +self_modulate = Color(1, 1, 1, 0) layout_mode = 2 mouse_filter = 1 @@ -2858,7 +2873,7 @@ custom_minimum_size = Vector2(800, 800) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 -mouse_filter = 2 +mouse_filter = 0 scroll_vertical = 638 horizontal_scroll_mode = 0 vertical_scroll_mode = 3 @@ -2945,6 +2960,28 @@ texture = ExtResource("12_xnele") [node name="skip_control3" parent="logic/ScenePlayer/jui_jutsu/PanelContainer" instance=ExtResource("15_7nc4e")] layout_mode = 2 +costum_owner = NodePath("../..") + +[node name="Panel" type="PanelContainer" parent="logic/ScenePlayer/jui_jutsu"] +layout_mode = 2 +theme_override_styles/panel = SubResource("StyleBoxFlat_mlcq6") + +[node name="RichTextLabel" type="RichTextLabel" parent="logic/ScenePlayer/jui_jutsu/Panel"] +layout_mode = 2 +theme_override_colors/default_color = Color(0, 0, 0, 1) +theme_override_fonts/normal_font = ExtResource("20_pyf88") +theme_override_font_sizes/normal_font_size = 28 +bbcode_enabled = true +text = "Hinweis für die USK-Prüfung! +Diese Szene wird auf der Messe deaktiviert sein. +Ich glaube zwar das ist immer noch angemessen +für USK-12 für ein finales Release, aber ungeeignet +für eine Messe-Umgebung, die kein Safer Space ist. +Ich will nicht Jugendliche, die ggf. durch das Spiel +eine Traumareaktion erleben, mitten in einer +Messehalle wieder beruhigen müssen." +fit_content = true +autowrap_mode = 0 [node name="draeven" type="CenterContainer" parent="logic/ScenePlayer"] visible = false @@ -3022,6 +3059,7 @@ stretch_mode = 4 [node name="skip_control4" parent="logic/ScenePlayer/draeven/PanelContainer" instance=ExtResource("15_7nc4e")] layout_mode = 2 +costum_owner = NodePath("../..") [node name="starlight_mesh" type="MeshInstance3D" parent="logic/ScenePlayer/draeven"] transform = Transform3D(0.999, 0, 0, 0, 0.999, 0, 0, 0, 0.999, 0, 0, 0) @@ -3041,7 +3079,7 @@ spot_angle = 85.9425 spot_angle_attenuation = 0.57435 [node name="starlight_lamp" type="SpotLight3D" parent="logic/ScenePlayer/draeven/starlight_mesh"] -transform = Transform3D(0.551241, -0.677235, 0.489376, 0.695947, 0.0477087, -0.717903, 0.462379, 0.735581, 0.497121, 1.76541, 0.251864, 0.941618) +transform = Transform3D(0.55069, -0.676558, 0.488887, 0.695251, 0.0476608, -0.717185, 0.461917, 0.734845, 0.496624, 1.76541, 0.251864, 0.941618) light_color = Color(0, 1, 1, 1) light_energy = 2.0 light_specular = 0.0 @@ -3331,6 +3369,7 @@ transform = Transform3D(-0.410985, -0.460061, 0.787042, -0.904759, 0.311726, -0. stream = ExtResource("2_3haaq") attenuation_model = 1 volume_db = -15.367 +autoplay = true panning_strength = 0.5 bus = &"sfx" emission_angle_enabled = true @@ -3346,6 +3385,7 @@ bus = &"sfx" stream = ExtResource("22_xrkbj") attenuation_model = 3 pitch_scale = 0.8 +autoplay = true panning_strength = 0.2 bus = &"outside-rain" @@ -3417,7 +3457,7 @@ spot_angle_attenuation = 0.812252 script = SubResource("GDScript_35dmj") [node name="desk_secondary" type="OmniLight3D" parent="visuals/lights/desk_light"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 2.98023e-08, 1, 0.0352738, 0.0654936, -0.292101) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 2.98023e-08, 1, 0.221273, 0.0654936, -0.292101) light_color = Color(0.952941, 0.662745, 0.54902, 1) light_energy = 0.5 light_size = 0.499 @@ -3527,6 +3567,7 @@ skeleton = NodePath("") [node name="ReflectionProbe" type="ReflectionProbe" parent="visuals/vfx/lava-lamp"] transform = Transform3D(0.866853, 0, -0.498563, 0, 1, 0, 0.498563, 0, 0.866853, -0.0356357, 0.0416123, 0.020328) +visible = false max_distance = 7.0 size = Vector3(2, 2, 2) @@ -3636,6 +3677,7 @@ light_array = Array[Vector3]([Vector3(-0.545, 0.915, 1.035), Vector3(-0.47, 0.85 [connection signal="pressed" from="logic/UI/ending_button" to="logic/UI/ending_button" method="hide"] [connection signal="pressed" from="logic/UI/ending_button" to="logic/UI/ending" method="show"] [connection signal="cards_picked" from="logic/UI/Picker" to="logic/UI/Board" method="populate_board"] +[connection signal="cards_picked" from="logic/UI/Picker" to="WorldEnvironment" method="_on_picker_cards_picked"] [connection signal="board_completed" from="logic/UI/Board" to="logic/UI/ending_button" method="show"] [connection signal="skip" from="logic/ScenePlayer/childhood/PanelContainer/skip_control" to="logic/ScenePlayer" method="on_childhood_done"] [connection signal="skip" from="logic/ScenePlayer/childhood/PanelContainer/skip_control" to="logic/ScenePlayer" method="play" binds= ["RESET"]] diff --git a/src/dev-util/room_template.gd b/src/dev-util/room_template.gd index d858d1e..af23927 100644 --- a/src/dev-util/room_template.gd +++ b/src/dev-util/room_template.gd @@ -1,7 +1,19 @@ class_name RoomTemplate extends Node3D +var initialised: bool = false + +var has_stage: bool: + set(value): + has_stage = value + if has_stage and not initialised: + start_room() + + @export var save_game:SaveGame = null +func start_room(): + pass + func pull_save_state(save: SaveGame) -> void: pass