mirror of
https://github.com/deunix-educ/aventuriers-des-mots.git
synced 2026-10-13 02:11:58 +02:00
Add choice between five background music tracks (0.5.1)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -66,7 +66,7 @@ func _ready() -> void:
|
||||
_skill_id = _rule.get("skill", "")
|
||||
_current_difficulty = ProgressManager.next_difficulty_for_skill(_skill_id, 1)
|
||||
$Backdrop.kind = "marsh" if _rule.get("level", "CE1") == "CE2" else "forest"
|
||||
AudioManager.play_music(SoundCatalog.music_for_level(_rule.get("level", "CE1")))
|
||||
AudioManager.play_region_music(_rule.get("level", "CE1"))
|
||||
_show_rule_panel()
|
||||
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ func _ready() -> void:
|
||||
_new_profile_button.pressed.connect(_on_new_profile_pressed)
|
||||
_delete_confirm_dialog.confirmed.connect(_on_delete_confirmed)
|
||||
|
||||
AudioManager.play_music("forest")
|
||||
AudioManager.play_region_music("CE1")
|
||||
_refresh_profile_list()
|
||||
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ func _ready() -> void:
|
||||
var mission := ExerciseEngine.get_mission(GameManager.pending_mission_id)
|
||||
var rule := ExerciseEngine.get_rule(mission.get("rule_id", ""))
|
||||
_backdrop.kind = "marsh" if rule.get("level", "CE1") == "CE2" else "forest"
|
||||
AudioManager.play_music(SoundCatalog.music_for_level(rule.get("level", "CE1")))
|
||||
AudioManager.play_region_music(rule.get("level", "CE1"))
|
||||
|
||||
var summary := ProgressManager.complete_mission(
|
||||
GameManager.pending_mission_id, GameManager.last_outcomes
|
||||
|
||||
@@ -11,6 +11,8 @@ extends Control
|
||||
@onready var _music_slider: HSlider = %MusicSlider
|
||||
@onready var _effects_label: Label = %EffectsLabel
|
||||
@onready var _effects_slider: HSlider = %EffectsSlider
|
||||
@onready var _track_label: Label = %TrackLabel
|
||||
@onready var _track_option: OptionButton = %TrackOption
|
||||
@onready var _text_size_label: Label = %TextSizeLabel
|
||||
@onready var _text_size_box: HBoxContainer = %TextSizeBox
|
||||
@onready var _animations_label: Label = %AnimationsLabel
|
||||
@@ -36,6 +38,7 @@ func _ready() -> void:
|
||||
_volume_slider.drag_ended.connect(_on_drag_ended)
|
||||
_effects_slider.drag_ended.connect(_on_drag_ended)
|
||||
|
||||
_build_track_option()
|
||||
_build_text_size_buttons()
|
||||
|
||||
_build_animation_buttons()
|
||||
@@ -80,6 +83,21 @@ func _setup_slider(slider: HSlider, value: float, handler: Callable) -> void:
|
||||
slider.value_changed.connect(handler)
|
||||
|
||||
|
||||
func _build_track_option() -> void:
|
||||
_track_label.text = UIText.get_text("settings.track_label")
|
||||
var choices := SoundCatalog.music_choices()
|
||||
for choice in choices:
|
||||
_track_option.add_item(UIText.get_text("music.%s" % choice))
|
||||
_track_option.select(choices.find(SettingsManager.music_track))
|
||||
_track_option.item_selected.connect(_on_track_selected)
|
||||
|
||||
|
||||
func _on_track_selected(index: int) -> void:
|
||||
SettingsManager.set_music_track(SoundCatalog.music_choices()[index])
|
||||
# On fait entendre le choix tout de suite.
|
||||
AudioManager.play_region_music(ProgressManager.school_level())
|
||||
|
||||
|
||||
func _on_volume_changed(value: float) -> void:
|
||||
SettingsManager.set_volume(value)
|
||||
|
||||
|
||||
+17
-1
@@ -41,7 +41,7 @@ custom_minimum_size = Vector2(640, 0)
|
||||
|
||||
[node name="VBox" type="VBoxContainer" parent="Margin/Center/Card"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 14
|
||||
theme_override_constants/separation = 8
|
||||
|
||||
[node name="TitleLabel" type="Label" parent="Margin/Center/Card/VBox"]
|
||||
unique_name_in_owner = true
|
||||
@@ -100,6 +100,22 @@ size_flags_horizontal = 3
|
||||
size_flags_vertical = 4
|
||||
custom_minimum_size = Vector2(0, 40)
|
||||
|
||||
[node name="TrackRow" type="HBoxContainer" parent="Margin/Center/Card/VBox"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 16
|
||||
|
||||
[node name="TrackLabel" type="Label" parent="Margin/Center/Card/VBox/TrackRow"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
custom_minimum_size = Vector2(230, 0)
|
||||
theme_type_variation = &"Emphasis"
|
||||
|
||||
[node name="TrackOption" type="OptionButton" parent="Margin/Center/Card/VBox/TrackRow"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
custom_minimum_size = Vector2(0, 48)
|
||||
|
||||
[node name="TextSizeLabel" type="Label" parent="Margin/Center/Card/VBox"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
|
||||
@@ -40,7 +40,7 @@ func _ready() -> void:
|
||||
func _refresh() -> void:
|
||||
var is_ce2 := _viewed_level == "CE2"
|
||||
_backdrop.kind = "marsh" if is_ce2 else "forest"
|
||||
AudioManager.play_music(SoundCatalog.music_for_level(_viewed_level))
|
||||
AudioManager.play_region_music(_viewed_level)
|
||||
_title_label.text = UIText.get_text("world_map.title_ce2" if is_ce2 else "world_map.title")
|
||||
_level_toggle_button.text = UIText.get_text(
|
||||
"world_map.review_ce1_button" if is_ce2 else "world_map.back_to_ce2_button"
|
||||
|
||||
Reference in New Issue
Block a user