Added UI sound effects

This commit is contained in:
Eduard Urbach 2024-02-29 00:12:14 +01:00
parent 9e3b595f71
commit e3330c7f42
Signed by: akyoto
GPG Key ID: C874F672B1AF20C0
9 changed files with 80 additions and 21 deletions

15
client/audio/Audio.gd Normal file
View File

@ -0,0 +1,15 @@
extends Node
var ui: AudioStreamPlayer
func _ready():
ui = $UI
assert(ui)
func play_ui(stream: AudioStream):
ui.stream = stream
ui.play()
func mute(enabled: bool):
var master_sound = AudioServer.get_bus_index("Master")
AudioServer.set_bus_mute(master_sound, enabled)

19
client/audio/Audio.tscn Normal file
View File

@ -0,0 +1,19 @@
[gd_scene load_steps=3 format=3 uid="uid://ev7uecbluell"]
[ext_resource type="Script" path="res://audio/Audio.gd" id="1_nv42i"]
[ext_resource type="AudioStream" uid="uid://b36mntcqlt553" path="res://assets/audio/ambience/Wind-Vegetation-Leaves-Gusts.wav" id="2_fkia1"]
[node name="Audio" type="Node"]
process_thread_group = 2
process_thread_group_order = 0
process_thread_messages = 0
script = ExtResource("1_nv42i")
[node name="Ambience" type="AudioStreamPlayer" parent="."]
stream = ExtResource("2_fkia1")
autoplay = true
bus = &"Ambience"
[node name="UI" type="AudioStreamPlayer" parent="."]
max_polyphony = 3
bus = &"UI"

View File

@ -22,6 +22,7 @@ buses/default_bus_layout="res://world/AudioBusLayout.tres"
[autoload]
Global="*res://Global.tscn"
Audio="*res://audio/Audio.tscn"
[debug]

View File

@ -1,5 +0,0 @@
class_name Audio
static func mute(enabled: bool):
var master_sound = AudioServer.get_bus_index("Master")
AudioServer.set_bus_mute(master_sound, enabled)

View File

@ -0,0 +1,10 @@
extends Button
@export var hover: AudioStream
@export var click: AudioStream
func _ready():
assert(hover)
assert(click)
mouse_entered.connect(Audio.play_ui.bind(hover))
button_down.connect(Audio.play_ui.bind(click))

View File

@ -0,0 +1,15 @@
[gd_scene load_steps=4 format=3 uid="uid://bul4bacam6s78"]
[ext_resource type="Script" path="res://ui/button/Button.gd" id="1_75erh"]
[ext_resource type="AudioStream" uid="uid://bxg5jpc7glw8s" path="res://assets/audio/ui/hover.wav" id="2_7ak8k"]
[ext_resource type="AudioStream" uid="uid://bfa480mk0nwj" path="res://assets/audio/ui/click.wav" id="3_o67x3"]
[node name="Button" type="Button"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_75erh")
hover = ExtResource("2_7ak8k")
click = ExtResource("3_o67x3")

View File

@ -1,7 +1,8 @@
[gd_scene load_steps=16 format=3 uid="uid://bqpbrju7mc7d5"]
[gd_scene load_steps=17 format=3 uid="uid://bqpbrju7mc7d5"]
[ext_resource type="Script" path="res://ui/settings/Settings.gd" id="1_gx3lf"]
[ext_resource type="Script" path="res://ui/label/ParentNameLabel.gd" id="2_72a3s"]
[ext_resource type="PackedScene" uid="uid://bul4bacam6s78" path="res://ui/button/Button.tscn" id="3_42una"]
[ext_resource type="Script" path="res://ui/settings/video/Preset.gd" id="3_il1yi"]
[ext_resource type="Script" path="res://ui/settings/video/RenderScale.gd" id="4_owrjf"]
[ext_resource type="Script" path="res://ui/settings/video/ScaleMode.gd" id="5_monk2"]
@ -55,17 +56,17 @@ script = ExtResource("2_72a3s")
layout_mode = 2
size_flags_horizontal = 3
[node name="Low" type="Button" parent="TabContainer/Video/VBoxContainer/Preset/HBoxContainer"]
[node name="Low" parent="TabContainer/Video/VBoxContainer/Preset/HBoxContainer" instance=ExtResource("3_42una")]
layout_mode = 2
size_flags_horizontal = 3
text = "Low"
[node name="Medium" type="Button" parent="TabContainer/Video/VBoxContainer/Preset/HBoxContainer"]
[node name="Medium" parent="TabContainer/Video/VBoxContainer/Preset/HBoxContainer" instance=ExtResource("3_42una")]
layout_mode = 2
size_flags_horizontal = 3
text = "Medium"
[node name="High" type="Button" parent="TabContainer/Video/VBoxContainer/Preset/HBoxContainer"]
[node name="High" parent="TabContainer/Video/VBoxContainer/Preset/HBoxContainer" instance=ExtResource("3_42una")]
layout_mode = 2
size_flags_horizontal = 3
text = "High"
@ -272,6 +273,9 @@ layout_mode = 2
[node name="Ambience" parent="TabContainer/Audio/VBoxContainer" instance=ExtResource("14_pvo80")]
layout_mode = 2
[node name="UI" parent="TabContainer/Audio/VBoxContainer" instance=ExtResource("14_pvo80")]
layout_mode = 2
[node name="Skills" parent="TabContainer/Audio/VBoxContainer" instance=ExtResource("14_pvo80")]
layout_mode = 2

View File

@ -30,15 +30,21 @@ bus/4/volume_db = -12.9785
bus/4/send = &"Master"
bus/4/effect/0/effect = SubResource("AudioEffectReverb_hjj00")
bus/4/effect/0/enabled = true
bus/5/name = &"Footsteps"
bus/5/name = &"UI"
bus/5/solo = false
bus/5/mute = false
bus/5/bypass_fx = false
bus/5/volume_db = -4.5
bus/5/send = &"Effects"
bus/6/name = &"Skills"
bus/5/volume_db = 0.0
bus/5/send = &"Master"
bus/6/name = &"Footsteps"
bus/6/solo = false
bus/6/mute = false
bus/6/bypass_fx = false
bus/6/volume_db = 0.0
bus/6/volume_db = -4.5
bus/6/send = &"Effects"
bus/7/name = &"Skills"
bus/7/solo = false
bus/7/mute = false
bus/7/bypass_fx = false
bus/7/volume_db = 0.0
bus/7/send = &"Effects"

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=19 format=3 uid="uid://be6mcpdaobs5u"]
[gd_scene load_steps=18 format=3 uid="uid://be6mcpdaobs5u"]
[ext_resource type="Terrain3DStorage" uid="uid://c38e3dyrl8lao" path="res://assets/terrain/Storage.res" id="1_xsh2l"]
[ext_resource type="Terrain3DMaterial" uid="uid://nhcs8ekjedbb" path="res://world/terrain/Material.tres" id="2_3ekjf"]
@ -15,7 +15,6 @@
[ext_resource type="FastNoiseLite" uid="uid://d3f4lk8q04haa" path="res://world/trees/TreeNoise.tres" id="14_6v5re"]
[ext_resource type="Environment" uid="uid://dixa0yso2s1u3" path="res://world/Environment.tres" id="16_i8t0h"]
[ext_resource type="Script" path="res://world/Sun.gd" id="17_nxk5c"]
[ext_resource type="AudioStream" uid="uid://b36mntcqlt553" path="res://assets/audio/ambience/Wind-Vegetation-Leaves-Gusts.wav" id="18_8j4nl"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_yp2fx"]
seed = 100
@ -80,8 +79,3 @@ transform = Transform3D(-0.350207, 0.827032, -0.439741, 0, 0.469472, 0.882948, 0
light_energy = 1.8
shadow_enabled = true
script = ExtResource("17_nxk5c")
[node name="Ambience" type="AudioStreamPlayer" parent="."]
stream = ExtResource("18_8j4nl")
autoplay = true
bus = &"Ambience"