sound settings set on start + smoother zoom (and holding works)
This commit is contained in:
@@ -77,6 +77,7 @@ func _init():
|
||||
load_settings_data()
|
||||
update_language_settings()
|
||||
update_video_settings()
|
||||
update_sound_settings(settings_data)
|
||||
settings_data.language_changed.connect(_on_settings_language_changed)
|
||||
settings_data.video_changed.connect(_on_settings_video_changed)
|
||||
settings_data.sound_changed.connect(_on_settings_sound_changed)
|
||||
@@ -92,10 +93,7 @@ func _on_settings_language_changed(s : SettingsData):
|
||||
update_language_settings(s)
|
||||
|
||||
func _on_settings_sound_changed(s : SettingsData):
|
||||
AudioServer.set_bus_volume_db(SettingsData.MASTER_BUS_ID, linear_to_db(s.master_volume))
|
||||
AudioServer.set_bus_volume_db(SettingsData.MUSIC_BUS_ID, linear_to_db(s.music_volume))
|
||||
AudioServer.set_bus_volume_db(SettingsData.SFX_BUS_ID, linear_to_db(s.sfx_volume))
|
||||
AudioServer.set_bus_volume_db(SettingsData.AMBIANCE_BUS_ID, linear_to_db(s.ambiance_volume))
|
||||
update_sound_settings(s)
|
||||
|
||||
func _on_timeline_started():
|
||||
current_dialog_path = Dialogic.current_timeline.resource_path
|
||||
@@ -105,6 +103,12 @@ func _on_timeline_ended():
|
||||
game_data.dialogs_done.append(current_dialog_path)
|
||||
save_game_data()
|
||||
|
||||
func update_sound_settings(s: SettingsData):
|
||||
AudioServer.set_bus_volume_db(SettingsData.MASTER_BUS_ID, linear_to_db(s.master_volume))
|
||||
AudioServer.set_bus_volume_db(SettingsData.MUSIC_BUS_ID, linear_to_db(s.music_volume))
|
||||
AudioServer.set_bus_volume_db(SettingsData.SFX_BUS_ID, linear_to_db(s.sfx_volume))
|
||||
AudioServer.set_bus_volume_db(SettingsData.AMBIANCE_BUS_ID, linear_to_db(s.ambiance_volume))
|
||||
|
||||
func update_language_settings(s : SettingsData = settings_data):
|
||||
TranslationServer.set_locale(s.language)
|
||||
|
||||
|
||||
@@ -17,10 +17,14 @@ const ZOOM_STEP = 0.1
|
||||
var shake_noise := FastNoiseLite.new()
|
||||
|
||||
func _input(_e):
|
||||
if Input.is_action_just_pressed("zoom_in"):
|
||||
if Input.is_action_pressed("zoom_in"):
|
||||
if settings.zoom < zoom.x: # was zooming out
|
||||
settings.zoom = (zoom.x / ZOOM_STEP) * ZOOM_STEP
|
||||
settings.zoom = settings.zoom + ZOOM_STEP
|
||||
GameInfo.save_settings()
|
||||
if Input.is_action_just_pressed("zoom_out"):
|
||||
if Input.is_action_pressed("zoom_out"):
|
||||
if settings.zoom > zoom.x: # was zooming in
|
||||
settings.zoom = (zoom.x / ZOOM_STEP) * ZOOM_STEP
|
||||
settings.zoom = settings.zoom - ZOOM_STEP
|
||||
GameInfo.save_settings()
|
||||
|
||||
@@ -33,7 +37,7 @@ func _process(delta):
|
||||
if following and should_follow:
|
||||
global_position = following.global_position.lerp(global_position, MOVE_LERP_WEIGHT)
|
||||
|
||||
zoom = zoom.lerp(Vector2.ONE * settings.zoom, MOVE_LERP_WEIGHT)
|
||||
zoom = zoom.lerp(Vector2.ONE * settings.zoom, ZOOM_LERP_WEIGHT)
|
||||
|
||||
if shake_active_time > 0.:
|
||||
shake_active_time -= delta
|
||||
|
||||
Reference in New Issue
Block a user