feat: Play sounds scene independent
This commit is contained in:
parent
85fd6a6c80
commit
3abef2dc74
@ -1,2 +1,14 @@
|
|||||||
extends Node
|
extends Node
|
||||||
|
var disposable_player: AudioStreamPlayer
|
||||||
|
|
||||||
|
func play_scene_independent(sound_name: String, bus: String = "Master", attenuation: float = 0.0) -> void:
|
||||||
|
disposable_player = AudioStreamPlayer.new()
|
||||||
|
add_child(disposable_player)
|
||||||
|
disposable_player.stream = GlobalState.sound_library[sound_name]
|
||||||
|
disposable_player.volume_db = attenuation
|
||||||
|
disposable_player.bus = bus
|
||||||
|
disposable_player.play()
|
||||||
|
disposable_player.connect("finished", self, "dispose_player")
|
||||||
|
|
||||||
|
func dispose_player(player: AudioStreamPlayer = disposable_player) -> void:
|
||||||
|
player.queue_free()
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
[gd_scene load_steps=27 format=2]
|
[gd_scene load_steps=28 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://src/Levels/Templates/LevelTemplate.gd" type="Script" id=1]
|
[ext_resource path="res://src/Levels/Templates/LevelTemplate.gd" type="Script" id=1]
|
||||||
[ext_resource path="res://src/Environment/GreenHouseTiles.tres" type="TileSet" id=2]
|
[ext_resource path="res://src/Environment/GreenHouseTiles.tres" type="TileSet" id=2]
|
||||||
@ -17,6 +17,7 @@
|
|||||||
[ext_resource path="res://src/UserInterface/TutorialThingy.tscn" type="PackedScene" id=15]
|
[ext_resource path="res://src/UserInterface/TutorialThingy.tscn" type="PackedScene" id=15]
|
||||||
[ext_resource path="res://assets/effects/pixelDissolve.gdshader" type="Shader" id=16]
|
[ext_resource path="res://assets/effects/pixelDissolve.gdshader" type="Shader" id=16]
|
||||||
[ext_resource path="res://assets/effects/noise.png" type="Texture" id=17]
|
[ext_resource path="res://assets/effects/noise.png" type="Texture" id=17]
|
||||||
|
[ext_resource path="res://src/ObstacleObjects/Mine.tscn" type="PackedScene" id=18]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachinePlayback" id=14]
|
[sub_resource type="AnimationNodeStateMachinePlayback" id=14]
|
||||||
|
|
||||||
@ -164,10 +165,10 @@ unique_name_in_owner = true
|
|||||||
process_mode = 1
|
process_mode = 1
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
frame = 8
|
frame = 9
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 7
|
frame = 8
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 7 )]
|
[node name="Blobby" parent="." instance=ExtResource( 7 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
@ -596,6 +597,114 @@ anims/cease_4_exist = SubResource( 10 )
|
|||||||
[node name="CollisionShape2D" parent="Tutorials/RightTut/StartTutorialArea" index="0"]
|
[node name="CollisionShape2D" parent="Tutorials/RightTut/StartTutorialArea" index="0"]
|
||||||
position = Vector2( -24.5, 0 )
|
position = Vector2( -24.5, 0 )
|
||||||
|
|
||||||
|
[node name="Mine" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 31, -6 )
|
||||||
|
|
||||||
|
[node name="Mine3" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 31, -24 )
|
||||||
|
|
||||||
|
[node name="Mine2" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 31, -41 )
|
||||||
|
|
||||||
|
[node name="Mine4" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 48, -6 )
|
||||||
|
|
||||||
|
[node name="Mine5" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 48, -24 )
|
||||||
|
|
||||||
|
[node name="Mine6" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 48, -41 )
|
||||||
|
|
||||||
|
[node name="Mine7" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 63, -6 )
|
||||||
|
|
||||||
|
[node name="Mine8" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 63, -24 )
|
||||||
|
|
||||||
|
[node name="Mine9" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 63, -41 )
|
||||||
|
|
||||||
|
[node name="Mine10" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 80, -6 )
|
||||||
|
|
||||||
|
[node name="Mine11" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 80, -24 )
|
||||||
|
|
||||||
|
[node name="Mine12" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 80, -41 )
|
||||||
|
|
||||||
|
[node name="Mine13" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 95, -6 )
|
||||||
|
|
||||||
|
[node name="Mine14" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 95, -24 )
|
||||||
|
|
||||||
|
[node name="Mine15" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 95, -41 )
|
||||||
|
|
||||||
|
[node name="Mine16" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 112, -6 )
|
||||||
|
|
||||||
|
[node name="Mine17" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 112, -24 )
|
||||||
|
|
||||||
|
[node name="Mine18" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 112, -41 )
|
||||||
|
|
||||||
|
[node name="Mine19" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 128, -6 )
|
||||||
|
|
||||||
|
[node name="Mine20" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 128, -24 )
|
||||||
|
|
||||||
|
[node name="Mine21" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 128, -41 )
|
||||||
|
|
||||||
|
[node name="Mine22" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 145, -6 )
|
||||||
|
|
||||||
|
[node name="Mine23" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 145, -24 )
|
||||||
|
|
||||||
|
[node name="Mine24" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 145, -41 )
|
||||||
|
|
||||||
|
[node name="Mine25" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 160, -6 )
|
||||||
|
|
||||||
|
[node name="Mine26" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 160, -24 )
|
||||||
|
|
||||||
|
[node name="Mine27" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 160, -41 )
|
||||||
|
|
||||||
|
[node name="Mine28" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 177, -6 )
|
||||||
|
|
||||||
|
[node name="Mine29" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 177, -24 )
|
||||||
|
|
||||||
|
[node name="Mine30" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 177, -41 )
|
||||||
|
|
||||||
|
[node name="Mine31" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 192, -6 )
|
||||||
|
|
||||||
|
[node name="Mine32" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 192, -24 )
|
||||||
|
|
||||||
|
[node name="Mine33" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 192, -41 )
|
||||||
|
|
||||||
|
[node name="Mine34" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 209, -6 )
|
||||||
|
|
||||||
|
[node name="Mine35" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 209, -24 )
|
||||||
|
|
||||||
|
[node name="Mine36" parent="." instance=ExtResource( 18 )]
|
||||||
|
position = Vector2( 209, -41 )
|
||||||
|
|
||||||
[connection signal="body_exited" from="Blobby/BlobbySkin" to="Blobby" method="_on_BlobbySkin_body_exited"]
|
[connection signal="body_exited" from="Blobby/BlobbySkin" to="Blobby" method="_on_BlobbySkin_body_exited"]
|
||||||
|
|
||||||
[editable path="SignalManager"]
|
[editable path="SignalManager"]
|
||||||
|
|||||||
@ -4,6 +4,7 @@ export(String, FILE) var next_scene_path: String = ""
|
|||||||
onready var selected_level_base_path: String = "res://src/Levels/"
|
onready var selected_level_base_path: String = "res://src/Levels/"
|
||||||
|
|
||||||
func _on_button_up() -> void:
|
func _on_button_up() -> void:
|
||||||
|
GlobalAudio.play_scene_independent("res://assets/sounds/MAGIC_SPELL_Morphing_Synth_Harp_Scales_Deep_stereo.wav", "Effects", -5)
|
||||||
get_tree().change_scene(next_scene_path)
|
get_tree().change_scene(next_scene_path)
|
||||||
get_tree().get_current_scene().queue_free()
|
get_tree().get_current_scene().queue_free()
|
||||||
get_tree().paused = false
|
get_tree().paused = false
|
||||||
|
|||||||
@ -763,7 +763,8 @@ margin_bottom = 250.0
|
|||||||
focus_neighbour_top = NodePath("../RetryButton")
|
focus_neighbour_top = NodePath("../RetryButton")
|
||||||
focus_neighbour_bottom = NodePath("../Continue")
|
focus_neighbour_bottom = NodePath("../Continue")
|
||||||
text = "Main Menu"
|
text = "Main Menu"
|
||||||
next_scene_path = "res://src/UserInterface/Screens/MainMenu/MainScreen.tscn"
|
script = ExtResource( 29 )
|
||||||
|
next_screen_path = "res://src/UserInterface/Screens/MainMenu/MainScreen.tscn"
|
||||||
|
|
||||||
[node name="PauseLabel" type="Label" parent="PauseOverlay"]
|
[node name="PauseLabel" type="Label" parent="PauseOverlay"]
|
||||||
anchor_left = 0.5
|
anchor_left = 0.5
|
||||||
|
|||||||
@ -157,7 +157,6 @@ margin_bottom = 30.0
|
|||||||
focus_neighbour_top = NodePath("../QuitButton")
|
focus_neighbour_top = NodePath("../QuitButton")
|
||||||
focus_neighbour_bottom = NodePath("../Controlls")
|
focus_neighbour_bottom = NodePath("../Controlls")
|
||||||
theme = ExtResource( 13 )
|
theme = ExtResource( 13 )
|
||||||
press_sound = "res://assets/sounds/MAGIC_SPELL_Bending_Synth_Climb_stereo.wav"
|
|
||||||
next_scene_path = "res://src/Levels/1 Tutorial Level.tscn"
|
next_scene_path = "res://src/Levels/1 Tutorial Level.tscn"
|
||||||
|
|
||||||
[node name="Controlls" parent="MenuContainer/Buttons" instance=ExtResource( 3 )]
|
[node name="Controlls" parent="MenuContainer/Buttons" instance=ExtResource( 3 )]
|
||||||
|
|||||||
@ -146,6 +146,7 @@ extents = Vector2( 61, 8 )
|
|||||||
|
|
||||||
[node name="TutorialComboThingy" type="Node2D"]
|
[node name="TutorialComboThingy" type="Node2D"]
|
||||||
physics_interpolation_mode = 2
|
physics_interpolation_mode = 2
|
||||||
|
z_index = 10
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
goal_state = "running"
|
goal_state = "running"
|
||||||
tutorial_text = "Press to run:"
|
tutorial_text = "Press to run:"
|
||||||
|
|||||||
@ -142,6 +142,7 @@ extents = Vector2( 62, 71 )
|
|||||||
[node name="TutorialThingy" type="Node2D"]
|
[node name="TutorialThingy" type="Node2D"]
|
||||||
physics_interpolation_mode = 2
|
physics_interpolation_mode = 2
|
||||||
visible = false
|
visible = false
|
||||||
|
z_index = 10
|
||||||
script = ExtResource( 2 )
|
script = ExtResource( 2 )
|
||||||
action = "jump"
|
action = "jump"
|
||||||
tutorial_text = "Press to Jump:"
|
tutorial_text = "Press to Jump:"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user