From bd5b45972577a3692946440f85b5fdf0ba4a7b9c Mon Sep 17 00:00:00 2001 From: Sara Date: Thu, 6 Nov 2025 02:20:42 +0100 Subject: [PATCH] feat: integrated sounds --- flatscreen-project/objects/case_file.tscn | 7 +++- flatscreen-project/objects/pinned_photo.tscn | 37 ++++++++++++++++--- flatscreen-project/objects/victim_file.tscn | 9 ++++- .../objects/witness_report.tscn | 7 +++- flatscreen-project/scenes/workspace.tscn | 18 +++++++-- 5 files changed, 64 insertions(+), 14 deletions(-) diff --git a/flatscreen-project/objects/case_file.tscn b/flatscreen-project/objects/case_file.tscn index a5c5fa96..8cd0a97a 100644 --- a/flatscreen-project/objects/case_file.tscn +++ b/flatscreen-project/objects/case_file.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=6 format=3 uid="uid://cjyr1b0fxfofx"] +[gd_scene load_steps=7 format=3 uid="uid://cjyr1b0fxfofx"] [ext_resource type="Texture2D" uid="uid://cplpndk6qv7sx" path="res://assets/photo-images/Case_Button.png" id="1_3vy0q"] [ext_resource type="Texture2D" uid="uid://2cn7xvs6k1r5" path="res://assets/photo-images/Case_file.png" id="2_vi7i2"] +[ext_resource type="AudioStream" uid="uid://dun7n7bl58ie6" path="res://assets/sound/open_file.ogg" id="3_vi7i2"] [sub_resource type="QuadMesh" id="QuadMesh_7cefc"] @@ -15,6 +16,7 @@ func _on_input_event(viewport: Node, event: InputEvent, _shape_idx: int) -> void $\"..\".request_open() else: $\"..\".request_close() + $\"../AudioStreamPlayer2D\".play() viewport.set_input_as_handled() " @@ -47,4 +49,7 @@ rotation = -1.5707964 scale = Vector2(1.0000002, 1.0000002) shape = SubResource("RectangleShape2D_vo7lu") +[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("3_vi7i2") + [connection signal="input_event" from="Area2D" to="Area2D" method="_on_input_event"] diff --git a/flatscreen-project/objects/pinned_photo.tscn b/flatscreen-project/objects/pinned_photo.tscn index 60303cc1..a7cf0292 100644 --- a/flatscreen-project/objects/pinned_photo.tscn +++ b/flatscreen-project/objects/pinned_photo.tscn @@ -1,4 +1,9 @@ -[gd_scene load_steps=6 format=3 uid="uid://btcmnw6q6g0h0"] +[gd_scene load_steps=11 format=3 uid="uid://btcmnw6q6g0h0"] + +[ext_resource type="AudioStream" uid="uid://csur36h1ob0ua" path="res://assets/sound/pin1.ogg" id="1_ivb85"] +[ext_resource type="AudioStream" uid="uid://bi17uqa4u7qwp" path="res://assets/sound/pin2.ogg" id="2_c6pa1"] +[ext_resource type="AudioStream" uid="uid://c7g7s8t0m88qn" path="res://assets/sound/pin3.ogg" id="3_c8ajs"] +[ext_resource type="AudioStream" uid="uid://bhkjl7abxtdlj" path="res://assets/sound/pickup_pin.ogg" id="4_c8ajs"] [sub_resource type="QuadMesh" id="QuadMesh_87mh6"] @@ -32,26 +37,38 @@ border_width_bottom = 2 border_color = Color(0, 0, 0, 1) border_blend = true +[sub_resource type="GDScript" id="GDScript_wl1hl"] +script/source = "extends AudioStreamPlayer2D + +@export var streams : Array[Resource] +var next : int = 0 + +func play_next() -> void: + stream = streams[next] + next = (next + 1) % streams.size() + play() +" + [node name="PinnedPhoto" type="PinnedPhoto"] input_pickable = true sync_to_physics = false [node name="MeshInstance2D" type="MeshInstance2D" parent="."] -position = Vector2(0, 78.47222) +position = Vector2(0, 69.52778) scale = Vector2(117.99999, -159.05556) mesh = SubResource("QuadMesh_87mh6") texture = SubResource("ImageTexture_usqe2") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] -position = Vector2(-0.5, 79) +position = Vector2(-0.5, 70.05556) shape = SubResource("RectangleShape2D_usqe2") [node name="PanelContainer" type="PanelContainer" parent="."] z_index = 1 offset_left = -215.0 -offset_top = 14.0 +offset_top = 5.0555573 offset_right = -69.0 -offset_bottom = 150.0 +offset_bottom = 141.05556 theme_override_styles/panel = SubResource("StyleBoxFlat_wl1hl") [node name="HoverLabel" type="RichTextLabel" parent="PanelContainer"] @@ -62,4 +79,12 @@ theme_override_styles/normal = SubResource("StyleBoxFlat_ivb85") text = "PLACEHOLDER TOOLTIP" fit_content = true -[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] +[node name="PinnedSound" type="AudioStreamPlayer2D" parent="."] +script = SubResource("GDScript_wl1hl") +streams = [ExtResource("1_ivb85"), ExtResource("2_c6pa1"), ExtResource("3_c8ajs")] + +[node name="PickupSound" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("4_c8ajs") + +[connection signal="grabbed" from="." to="PickupSound" method="play"] +[connection signal="released" from="." to="PinnedSound" method="play_next"] diff --git a/flatscreen-project/objects/victim_file.tscn b/flatscreen-project/objects/victim_file.tscn index 462f52b9..bc18019c 100644 --- a/flatscreen-project/objects/victim_file.tscn +++ b/flatscreen-project/objects/victim_file.tscn @@ -1,20 +1,21 @@ -[gd_scene load_steps=6 format=3 uid="uid://qmb60kjx6yoe"] +[gd_scene load_steps=7 format=3 uid="uid://qmb60kjx6yoe"] [ext_resource type="Texture2D" uid="uid://bwu83rfxi4mmh" path="res://assets/photo-images/Victim_Button.png" id="1_ajbhq"] [ext_resource type="Texture2D" uid="uid://ckj2guah0egq0" path="res://assets/photo-images/Victim_file.png" id="2_ajbhq"] +[ext_resource type="AudioStream" uid="uid://dun7n7bl58ie6" path="res://assets/sound/open_file.ogg" id="3_oknob"] [sub_resource type="QuadMesh" id="QuadMesh_7cefc"] [sub_resource type="GDScript" id="GDScript_7cefc"] script/source = "extends Area2D - func _on_input_event(viewport: Node, event: InputEvent, _shape_idx: int) -> void: if event is InputEventMouseButton: if not $\"..\".is_open(): $\"..\".request_open() else: $\"..\".request_close() + $\"../AudioStreamPlayer2D\".play() viewport.set_input_as_handled() " @@ -37,6 +38,10 @@ scale = Vector2(-667.5, 973.5) mesh = SubResource("QuadMesh_7cefc") texture = ExtResource("2_ajbhq") +[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] +position = Vector2(29.00617, 176.89134) +stream = ExtResource("3_oknob") + [node name="Area2D" type="Area2D" parent="."] position = Vector2(29.00617, 176.89134) script = SubResource("GDScript_7cefc") diff --git a/flatscreen-project/objects/witness_report.tscn b/flatscreen-project/objects/witness_report.tscn index f2ce6cfb..618c4936 100644 --- a/flatscreen-project/objects/witness_report.tscn +++ b/flatscreen-project/objects/witness_report.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=6 format=3 uid="uid://drcl138k0gym0"] +[gd_scene load_steps=7 format=3 uid="uid://drcl138k0gym0"] [ext_resource type="Texture2D" uid="uid://dravu5852jgek" path="res://assets/photo-images/Witness_Button.png" id="1_a8epn"] [ext_resource type="Texture2D" uid="uid://b17g56nxrdbti" path="res://assets/photo-images/Witness_file.png" id="2_a8epn"] +[ext_resource type="AudioStream" uid="uid://dun7n7bl58ie6" path="res://assets/sound/open_file.ogg" id="3_qp4tg"] [sub_resource type="QuadMesh" id="QuadMesh_7cefc"] @@ -15,6 +16,7 @@ func _on_input_event(viewport: Node, event: InputEvent, _shape_idx: int) -> void $\"..\".request_open() else: $\"..\".request_close() + $\"../AudioStreamPlayer2D\".play() viewport.set_input_as_handled() " @@ -47,4 +49,7 @@ rotation = -1.5707964 scale = Vector2(1.0000002, 1.0000002) shape = SubResource("RectangleShape2D_vo7lu") +[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("3_qp4tg") + [connection signal="input_event" from="Area2D" to="Area2D" method="_on_input_event"] diff --git a/flatscreen-project/scenes/workspace.tscn b/flatscreen-project/scenes/workspace.tscn index 16eb483d..d52f6a2b 100644 --- a/flatscreen-project/scenes/workspace.tscn +++ b/flatscreen-project/scenes/workspace.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=19 format=3 uid="uid://o3ri154wpbrx"] +[gd_scene load_steps=20 format=3 uid="uid://o3ri154wpbrx"] [ext_resource type="PackedScene" uid="uid://btcmnw6q6g0h0" path="res://objects/pinned_photo.tscn" id="1_7cefc"] [ext_resource type="PackedScene" uid="uid://kk4ecpjc4puc" path="res://scenes/results_ui.tscn" id="1_thvsl"] @@ -11,6 +11,7 @@ [ext_resource type="Texture2D" uid="uid://ulj00tq5b0kx" path="res://assets/photo-images/Untitled_Artwork.png" id="4_r41gl"] [ext_resource type="Texture2D" uid="uid://dyagjhgq52sht" path="res://assets/photo-images/Envelope_Front.png" id="5_r41gl"] [ext_resource type="Texture2D" uid="uid://be1xto717rt6n" path="res://assets/photo-images/Murder_Suspect_File.png" id="6_xic1t"] +[ext_resource type="AudioStream" uid="uid://b1e65rh58ff4r" path="res://assets/sound/Searchin theme solo.mp3" id="12_r41gl"] [sub_resource type="GDScript" id="GDScript_thvsl"] script/source = "extends Node2D @@ -210,16 +211,25 @@ clue = 12 position = Vector2(814, 363) clue = 11 -[node name="VictimFile" parent="." instance=ExtResource("2_vo7lu")] +[node name="VictimFile" parent="." node_paths=PackedStringArray("open_position") instance=ExtResource("2_vo7lu")] +open_position = NodePath("../FilePositionTarget") -[node name="WitnessReport" parent="." instance=ExtResource("3_wjago")] +[node name="WitnessReport" parent="." node_paths=PackedStringArray("open_position") instance=ExtResource("3_wjago")] +open_position = NodePath("../FilePositionTarget") -[node name="CaseFile" parent="." instance=ExtResource("4_cnvne")] +[node name="CaseFile" parent="." node_paths=PackedStringArray("open_position") instance=ExtResource("4_cnvne")] +open_position = NodePath("../FilePositionTarget") [node name="FilePositionTarget" type="Node2D" parent="."] position = Vector2(678.00006, 63.999996) rotation = -0.0034519732 +[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] +stream = ExtResource("12_r41gl") +volume_db = -13.79 +autoplay = true +parameters/looping = true + [connection signal="selection_changed" from="Handin/WeaponSlot" to="Handin/SubmitButton" method="_on_any_slot_selection_changed"] [connection signal="selection_changed" from="Handin/MotiveSlot" to="Handin/SubmitButton" method="_on_any_slot_selection_changed"] [connection signal="selection_changed" from="Handin/MurdererSlot" to="Handin/SubmitButton" method="_on_any_slot_selection_changed"]