Diffstat (limited to 'ui/scripts/Volume.gd')
-rw-r--r--ui/scripts/Volume.gd18
1 files changed, 18 insertions, 0 deletions
diff --git a/ui/scripts/Volume.gd b/ui/scripts/Volume.gd
new file mode 100644
index 0000000..2ff2ad5
--- /dev/null
+++ b/ui/scripts/Volume.gd
@@ -0,0 +1,18 @@
+extends HSlider
+export var audio_bus_name := "Master"
+onready var _bus := AudioServer.get_bus_index(audio_bus_name)
+
+
+func _ready() -> void:
+ value = db2linear(AudioServer.get_bus_volume_db(_bus))
+
+
+func _on_value_changed(value: float) -> void:
+ AudioServer.set_bus_volume_db(_bus, linear2db(value))
+
+
+func _on_VolumeSlider_gui_input(event):
+ if event.is_action("ui_left"):
+ value -= .009
+ elif event.is_action("ui_right"):
+ value += .009