From a096a4c6c58d27f64257b01cdd77114ed9ce9fd7 Mon Sep 17 00:00:00 2001 From: pennyrigate Date: Sun, 25 Jun 2023 16:13:46 -0400 Subject: [PATCH] drowning muffles and reverbs the audio --- autoloads/debug.gd | 4 + default_bus_layout.tres | 19 ++- graphics/player/sg_drown.png | Bin 0 -> 565 bytes graphics/player/sg_drown.png.import | 35 ++++ maps/abyss_scholar.tscn | 246 ++++++++++++++++++++-------- objects/player/player.gd | 11 ++ objects/player/player.tscn | 3 +- 7 files changed, 246 insertions(+), 72 deletions(-) create mode 100644 graphics/player/sg_drown.png create mode 100644 graphics/player/sg_drown.png.import diff --git a/autoloads/debug.gd b/autoloads/debug.gd index df3a5c0..90988de 100644 --- a/autoloads/debug.gd +++ b/autoloads/debug.gd @@ -132,3 +132,7 @@ func _enter_code(): "GILLS": var player = get_tree().get_nodes_in_group("player").pop_back() player.underwater = false + "CHORUS": + var music = AudioServer.get_bus_index("music") + AudioServer.set_bus_effect_enabled(music,0,true) + Console.print(AudioServer.get_bus_effect_count(music)) diff --git a/default_bus_layout.tres b/default_bus_layout.tres index a252150..0588eaf 100644 --- a/default_bus_layout.tres +++ b/default_bus_layout.tres @@ -1,12 +1,29 @@ -[gd_resource type="AudioBusLayout" format=2] +[gd_resource type="AudioBusLayout" load_steps=4 format=2] + +[sub_resource type="AudioEffectLowPassFilter" id=2] +resource_name = "LowPassFilter" +cutoff_hz = 1000.0 + +[sub_resource type="AudioEffectReverb" id=3] +resource_name = "Reverb" +room_size = 0.11 + +[sub_resource type="AudioEffectChorus" id=4] +resource_name = "Chorus" [resource] +bus/0/effect/0/effect = SubResource( 2 ) +bus/0/effect/0/enabled = false +bus/0/effect/1/effect = SubResource( 3 ) +bus/0/effect/1/enabled = false bus/1/name = "music" bus/1/solo = false bus/1/mute = false bus/1/bypass_fx = false bus/1/volume_db = 0.0 bus/1/send = "Master" +bus/1/effect/0/effect = SubResource( 4 ) +bus/1/effect/0/enabled = false bus/2/name = "sound" bus/2/solo = false bus/2/mute = false diff --git a/graphics/player/sg_drown.png b/graphics/player/sg_drown.png new file mode 100644 index 0000000000000000000000000000000000000000..2d2aa55dc9b9dd7722c5c27819e883a4bd578f6e GIT binary patch literal 565 zcmeAS@N?(olHy`uVBq!ia0vp^3xHUJgBeKLdL63)QjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`6$5-iTp1YtJ23qJ4@3_C8-NJNb@=bl@SnlqKLe0tU{JeRkq4x>OM?7@ z|HA=;mp|htpfG2FM`SSr1K(i~W;~w1A_Zt^o2QFoh==#tDUC%f3Op{s3J-q%m%npY zVkMJ#$+~%a=lXfibDVb|ECiv2ggPxxH%-AwqV zSNCLN?v4lBub+vRXckR)=Q>@>qT*pktHffDo;c%_H`$Rwp1Rr3m1f_+8Sv_=HOH|9 zXO*1UW-@x;I?>>oYnO7sgEhWfY>U*!kA5QEFA68B_ZZoBuR7jZf0|<_@1MsG zUlf>6ROiXx)3;WW^~R4vCxhp%rn?`U=Tqu@XLrvyCE|${+azZGo3Gss9X*PJ` void: if underwater: if oxygen_timer.time_left < 5: low_oxygen_label.text = str(floor(oxygen_timer.time_left) + 1) + set_underwater_audio(true) else: low_oxygen_label.text = "" + set_underwater_audio(false) else: + #NOT UNDERWATER low_oxygen_label.text = "" #Cheats @@ -130,6 +133,10 @@ func spawn_arrow() -> void: func die() -> void: state_chart.send_event("hurt") +func set_underwater_audio(value): + var idx = AudioServer.get_bus_index("Master") + AudioServer.set_bus_effect_enabled(idx,0,value) + AudioServer.set_bus_effect_enabled(idx,1,value) # STATE ENTERS/EXITS # func _on_Grounded_state_entered() -> void: @@ -402,4 +409,8 @@ func _on_Ducking_event_received(event): func _on_OxygenTimer_timeout(): if underwater: die() +#Reset low oxygen effect when leaving level +func _on_Player_tree_exited(): + set_underwater_audio(false) + diff --git a/objects/player/player.tscn b/objects/player/player.tscn index 35fcb29..ca537f9 100644 --- a/objects/player/player.tscn +++ b/objects/player/player.tscn @@ -1401,12 +1401,13 @@ margin_bottom = -18.0 theme = ExtResource( 7 ) align = 1 +[connection signal="tree_exited" from="." to="." method="_on_Player_tree_exited"] [connection signal="body_entered" from="Hitbox" to="." method="_on_Hitbox_body_entered"] [connection signal="state_physics_processing" from="StateChart/Root/Movement" to="." method="_process_movement"] [connection signal="state_entered" from="StateChart/Root/Movement/Grounded" to="." method="_on_Grounded_state_entered"] [connection signal="state_physics_processing" from="StateChart/Root/Movement/Grounded" to="." method="_process_grounded"] -[connection signal="state_physics_processing" from="StateChart/Root/Movement/Grounded/CanWalk" to="." method="_process_can_walk"] [connection signal="state_physics_processing" from="StateChart/Root/Movement/Grounded/CanWalk" to="." method="_process_horizontal_movement_grounded"] +[connection signal="state_physics_processing" from="StateChart/Root/Movement/Grounded/CanWalk" to="." method="_process_can_walk"] [connection signal="state_entered" from="StateChart/Root/Movement/Grounded/CanWalk/Still" to="." method="_on_Still_state_entered"] [connection signal="state_entered" from="StateChart/Root/Movement/Grounded/CanWalk/Walking" to="." method="_on_Walking_state_entered"] [connection signal="state_entered" from="StateChart/Root/Movement/Grounded/CanWalk/Blinking" to="." method="_on_Blinking_state_entered"]