1
0
mirror of https://github.com/JohnBreaux/Boat-Battle.git synced 2025-02-04 12:28:35 +00:00

Added master slider to change all volume

This commit is contained in:
hpham474
2021-11-07 22:43:00 -06:00
parent 737b460991
commit 7bae715ba5
3 changed files with 69 additions and 21 deletions

View File

@@ -1,7 +1,8 @@
extends Control
onready var master_slider = find_node("Master Slider", true, true)
onready var music_slider = find_node("Music Slider", true, true)
onready var sound_slider = find_node("SFX Slider", true, true)
onready var music_slider = find_node("Volume Slider", true, true)
onready var theme_buttons = find_node("Buttons", true, true).get_children()
@@ -9,23 +10,30 @@ onready var theme_buttons = find_node("Buttons", true, true).get_children()
func _ready():
OptionsController.load_options()
find_next_valid_focus().grab_focus()
sound_slider.value = OptionsController.get_sfx_volume()
master_slider.value = OptionsController.get_mas_volume()
music_slider.value = OptionsController.get_mus_volume()
sound_slider.value = OptionsController.get_sfx_volume()
func _on_Button_pressed():
AudioBus.emit_signal("button_clicked")
queue_free()
#MessageBus.emit_signal("change_scene", "Title")
func _on_Master_Slider_value_changed(value):
AudioBus.emit_signal("button_clicked")
OptionsController.set_mas_vol(value)
OptionsController.save_options()
func _on_Music_Slider_value_changed(value):
AudioBus.emit_signal("button_clicked")
OptionsController.set_mus_vol(value)
OptionsController.save_options()
func _on_SFX_Slider_value_changed(value):
AudioBus.emit_signal("button_clicked")
OptionsController.set_sfx_vol(value)
OptionsController.save_options()
func _on_Volume_Slider_value_changed(value):
OptionsController.set_mus_vol(value)
OptionsController.save_options()
func _on_Light_pressed():
AudioBus.emit_signal("button_clicked")
OptionsController.set_theme("light")

View File

@@ -8,6 +8,7 @@ signal change_theme (theme)
var f = File.new()
var options_file = "user://options.save"
var theme = "dark"
var mas_vol = 0
var mus_vol = 0
var sfx_vol = 0
@@ -19,7 +20,11 @@ func set_theme(theme_name):
match theme_name:
"dark","light":
theme = String(theme_name)
save_options()
emit_signal("change_theme", theme)
func set_mas_vol(volume):
mas_vol = volume
AudioServer.set_bus_volume_db(AudioServer.get_bus_index("Master"), mas_vol)
func set_mus_vol(volume):
mus_vol = volume
AudioServer.set_bus_volume_db(AudioServer.get_bus_index("BGM"), mus_vol)
@@ -31,6 +36,7 @@ func set_sfx_vol(volume):
func save_options():
f.open(options_file, File.WRITE)
f.store_var(theme)
f.store_var(mas_vol)
f.store_var(mus_vol)
f.store_var(sfx_vol)
f.close()
@@ -38,15 +44,19 @@ func load_options():
if f.file_exists(options_file):
f.open(options_file, File.READ)
theme = f.get_var()
mas_vol = f.get_var()
mus_vol = f.get_var()
sfx_vol = f.get_var()
f.close()
AudioServer.set_bus_volume_db(AudioServer.get_bus_index("Master"), mus_vol)
AudioServer.set_bus_volume_db(AudioServer.get_bus_index("BGM"), mus_vol)
AudioServer.set_bus_volume_db(AudioServer.get_bus_index("SFX"), sfx_vol)
# Getters
func get_theme():
return theme
func get_mas_volume():
return mas_vol
func get_mus_volume():
return mus_vol
func get_sfx_volume():