Clarify audio preview controls

This commit is contained in:
2026-06-21 06:24:41 +09:00
parent 121715659f
commit 57c56d90fd
3 changed files with 125 additions and 39 deletions

View File

@@ -664,6 +664,7 @@ var settings_sfx_volume_slider: HSlider
var settings_bgm_volume_value_label: Label
var settings_sfx_volume_value_label: Label
var settings_audio_status_label: Label
var settings_audio_preview_button: Button
var settings_audio_reset_button: Button
var restart_button: Button
var new_campaign_button: Button
@@ -703,6 +704,7 @@ var title_sfx_volume_slider: HSlider
var title_bgm_volume_value_label: Label
var title_sfx_volume_value_label: Label
var title_audio_status_label: Label
var title_audio_preview_button: Button
var title_audio_reset_button: Button
var title_settings_back_button: Button
var title_screen_visible := false
@@ -3669,12 +3671,28 @@ func _create_hud() -> void:
_apply_label_style(settings_audio_status_label, UI_PARCHMENT_TEXT, 12)
settings_column.add_child(settings_audio_status_label)
var settings_audio_button_row := HBoxContainer.new()
settings_audio_button_row.custom_minimum_size = Vector2(374, 32)
settings_audio_button_row.add_theme_constant_override("separation", 8)
settings_column.add_child(settings_audio_button_row)
settings_audio_preview_button = Button.new()
settings_audio_preview_button.text = "소리 확인"
settings_audio_preview_button.custom_minimum_size = Vector2(183, 32)
settings_audio_preview_button.tooltip_text = "현재 음악을 켜고 확인음, 발소리, 타격음, 퇴각음, 보급음을 차례로 재생합니다."
settings_audio_preview_button.set_meta("flat_readable_button", true)
_apply_button_style(settings_audio_preview_button)
settings_audio_preview_button.pressed.connect(_on_settings_audio_preview_pressed)
settings_audio_button_row.add_child(settings_audio_preview_button)
settings_audio_reset_button = Button.new()
settings_audio_reset_button.text = "기본값 듣기"
settings_audio_reset_button.custom_minimum_size = Vector2(374, 32)
settings_audio_reset_button.tooltip_text = "음악과 효과음을 켜고 75%로 되돌린 뒤 현재 음악, 확인음, 발소리, 타격음, 퇴각음, 보급음을 재생합니다."
settings_audio_reset_button.text = "기본값"
settings_audio_reset_button.custom_minimum_size = Vector2(183, 32)
settings_audio_reset_button.tooltip_text = "음악과 효과음을 켜고 크기를 75%로 되돌린 뒤 바로 소리를 확인합니다."
settings_audio_reset_button.set_meta("flat_readable_button", true)
_apply_button_style(settings_audio_reset_button)
settings_audio_reset_button.pressed.connect(_on_settings_audio_reset_pressed)
settings_column.add_child(settings_audio_reset_button)
settings_audio_button_row.add_child(settings_audio_reset_button)
settings_edge_scroll_toggle = CheckButton.new()
settings_edge_scroll_toggle.text = "가장자리 스크롤"
@@ -5471,17 +5489,34 @@ func _create_hud() -> void:
_apply_label_style(title_audio_status_label, UI_PARCHMENT_TEXT, 12)
title_settings_column.add_child(title_audio_status_label)
var title_audio_button_row := HBoxContainer.new()
title_audio_button_row.custom_minimum_size = Vector2(350, 32)
title_audio_button_row.add_theme_constant_override("separation", 8)
title_settings_column.add_child(title_audio_button_row)
title_audio_preview_button = Button.new()
_configure_title_menu_button(
title_audio_preview_button,
"TitleAudioPreviewButton",
"status",
"소리 확인",
"현재 음악을 켜고 확인음, 발소리, 타격음, 퇴각음, 보급음을 차례로 재생합니다.",
Vector2(171, 32)
)
title_audio_preview_button.pressed.connect(_on_title_audio_preview_pressed)
title_audio_button_row.add_child(title_audio_preview_button)
title_audio_reset_button = Button.new()
_configure_title_menu_button(
title_audio_reset_button,
"TitleAudioResetButton",
"status",
"기본값 듣기",
"음악과 효과음을 켜고 75%로 되돌린 뒤 현재 음악, 확인음, 발소리, 타격음, 퇴각음, 보급음을 재생합니다.",
Vector2(350, 32)
"기본값",
"음악과 효과음을 켜고 크기를 75%로 되돌린 뒤 바로 소리를 확인합니다.",
Vector2(171, 32)
)
title_audio_reset_button.pressed.connect(_on_title_audio_reset_pressed)
title_settings_column.add_child(title_audio_reset_button)
title_audio_button_row.add_child(title_audio_reset_button)
title_edge_scroll_toggle = CheckButton.new()
title_edge_scroll_toggle.text = "가장자리 스크롤"
@@ -5563,7 +5598,9 @@ func _create_hud() -> void:
title_load_manual_button,
title_load_back_button,
title_settings_back_button,
title_audio_preview_button,
title_audio_reset_button,
settings_audio_preview_button,
settings_audio_reset_button
]:
_apply_button_style(hud_button)
@@ -5717,11 +5754,11 @@ func _format_audio_status_text() -> String:
var sfx_text := "효과음 꺼짐"
if title_sfx_enabled:
sfx_text = "효과음 %d%%" % title_sfx_volume_percent
return "%s\n%s · 미리듣기: %s" % [bgm_text, sfx_text, AUDIO_PREVIEW_LABEL]
return "%s\n%s · 소리 확인: %s" % [bgm_text, sfx_text, AUDIO_PREVIEW_LABEL]
func _format_audio_status_tooltip() -> String:
return "현재 재생되는 음악과 기본값 듣기에서 확인할 효과음입니다.\n%s" % _format_audio_status_text()
return "현재 재생되는 음악과 소리 확인에서 들을 효과음입니다.\n%s" % _format_audio_status_text()
func _format_audio_chip_hint_detail() -> String:
@@ -15653,6 +15690,10 @@ func _on_settings_sfx_volume_changed(value: float) -> void:
_on_title_sfx_volume_changed(value)
func _on_settings_audio_preview_pressed() -> void:
_preview_audio_mix()
func _on_settings_audio_reset_pressed() -> void:
_restore_audio_defaults(true)
@@ -16498,6 +16539,25 @@ func _on_title_audio_reset_pressed() -> void:
_restore_audio_defaults(true)
func _on_title_audio_preview_pressed() -> void:
_preview_audio_mix()
func _preview_audio_mix() -> void:
title_bgm_enabled = true
title_sfx_enabled = true
if title_bgm_volume_percent <= 0:
title_bgm_volume_percent = DEFAULT_AUDIO_VOLUME_PERCENT
if title_sfx_volume_percent <= 0:
title_sfx_volume_percent = DEFAULT_AUDIO_VOLUME_PERCENT
_apply_audio_settings()
_save_title_settings()
_refresh_title_volume_controls()
_update_title_menu_state()
_play_bgm(current_bgm_key if not current_bgm_key.is_empty() else "menu")
_play_audio_preview_sfx()
func _restore_audio_defaults(play_preview: bool) -> void:
title_bgm_enabled = true
title_sfx_enabled = true