diff --git a/common/audio_manager/scripts/audio_manager.gd b/common/audio_manager/scripts/audio_manager.gd index 7fdcab1..57d233d 100644 --- a/common/audio_manager/scripts/audio_manager.gd +++ b/common/audio_manager/scripts/audio_manager.gd @@ -5,8 +5,7 @@ const MAX_VOLUME = 24. const DEFAULT_FADE_TIME : float = 0.5 -@onready var settings : SettingsData = GameInfo.settings_data - +@onready var settings : SettingsData = GameInfo.settings_data var music_action : AudioAction var ambiance_action : AudioAction @@ -16,50 +15,6 @@ var playing_ambiance : AudioStreamPlayer = null var default_volumes := {} func _ready(): -<<<<<<< HEAD - for player in get_all_players(): - player.stop() - - fetch_default_volumes() - setup_volume() - settings.sound_changed.connect( - func(_s) : setup_volume() - ) - SceneManager.scene_loaded.connect(_on_change_scene) - Dialogic.timeline_started.connect(_on_timeline_started) - -func _on_change_scene(scene : Scene): - play_ambiance() - - match scene.scene_id: - "TITLE": - play_music("Title") - "REGION": - play_music("Region") - play_ambiance("Exterior") - "COCKPIT": - play_music("Ship") - "ASTRA": - play_ambiance("Astra") - -func _on_timeline_started(): - var timeline_name = Dialogic.current_timeline.resource_path.split("/")[-1].trim_suffix(".dtl") - play_ambiance() - - match timeline_name: - "demeter_intro": - play_ambiance("Demeter") - "demeter_introV2": - play_ambiance("Demeter") - "demeter_midrun": - play_ambiance("Demeter") - "demeter_outro": - play_ambiance("Demeter") - "failure": - play_ambiance("Demeter") - # Timeline name et le nom du fichier de timeline, par exemple demeter_intro - # Amuse toi Niels ;) -======= for player in get_all_players(): player.stop() @@ -169,31 +124,13 @@ func play_ambiance(player_name : String = "", from_random_time := false, fade_ti func stop_ambiance(): ambiance_action = AudioStop.new() ->>>>>>> 65645d976a98b5bfd030770764e72893cb8d9ccd func fetch_default_volumes(): - var all_players := get_all_players() + var all_players := get_all_players() - for player in all_players: - default_volumes[player] = player.volume_db + for player in all_players: + default_volumes[player] = player.volume_db -<<<<<<< HEAD -func setup_volume(): - for player in get_all_players(): - player.volume_db = get_volume_from_parent(player) - -func get_volume_from_parent(player : AudioStreamPlayer) -> float: - var settings_volume = 0.5 - - if player.get_parent() == %Ambiance: - settings_volume = settings.ambiance_volume - elif player.get_parent() == %Sfx: - settings_volume = settings.sfx_volume - elif player.get_parent() == %Musics: - settings_volume = settings.music_volume - - return default_volumes[player] + lerp(MIN_VOLUME, MAX_VOLUME, settings_volume) -======= func setup_players_bus(): for player in get_all_players(): if player.get_parent() == %Musics: @@ -205,35 +142,29 @@ func setup_players_bus(): func get_volume(player : AudioStreamPlayer) -> float: return default_volumes[player] ->>>>>>> 65645d976a98b5bfd030770764e72893cb8d9ccd func get_all_players() -> Array[AudioStreamPlayer]: - var players : Array[AudioStreamPlayer] = [] - players.append_array(get_players_from_node(%Musics)) - players.append_array(get_players_from_node(%Ambiance)) - players.append_array(get_players_from_node(%Sfx)) + var players : Array[AudioStreamPlayer] = [] + players.append_array(get_players_from_node(%Musics)) + players.append_array(get_players_from_node(%Ambiance)) + players.append_array(get_players_from_node(%Sfx)) - return players + return players func get_players_from_node(node : Node) -> Array[AudioStreamPlayer]: - var streams : Array[AudioStreamPlayer] = [] + var streams : Array[AudioStreamPlayer] = [] - for c in node.get_children(): - if c is AudioStreamPlayer: - streams.append(c) - return streams + for c in node.get_children(): + if c is AudioStreamPlayer: + streams.append(c) + return streams -<<<<<<< HEAD -func set_volume(player : AudioStreamPlayer, to : float, fade_time = default_fade_time) -> Tween: - var fade_tween : Tween = get_tree().create_tween() -======= -func set_volume(player : AudioStreamPlayer, to : float, fade_time := 0.0) -> Tween: +func set_volume(player : AudioStreamPlayer, to : float, fade_time = DEFAULT_FADE_TIME) -> Tween: var fade_tween : Tween = get_tree().create_tween() ->>>>>>> 65645d976a98b5bfd030770764e72893cb8d9ccd - fade_tween.tween_property(player, "volume_db", to, fade_time) + fade_tween.tween_property(player, "volume_db", to, fade_time) - return fade_tween + return fade_tween func start_player(player: AudioStreamPlayer, from_random_time = false, fade_time = DEFAULT_FADE_TIME): if player and not player.playing: @@ -253,54 +184,15 @@ func stop_player(player : AudioStreamPlayer, fade_time = DEFAULT_FADE_TIME): player.volume_db = get_volume(player) func reset_volume(player : AudioStreamPlayer): -<<<<<<< HEAD - player.volume_db = get_volume_from_parent(player) -======= player.volume_db = get_volume(player) ->>>>>>> 65645d976a98b5bfd030770764e72893cb8d9ccd func play_sfx(sfx_name : String): - var player := %Sfx.find_child(sfx_name) as AudioStreamPlayer - if player: - player.play() - else: - printerr("Sfx %s not found" % sfx_name) + var player := %Sfx.find_child(sfx_name) as AudioStreamPlayer + if player: + player.play() + else: + printerr("Sfx %s not found" % sfx_name) -<<<<<<< HEAD -func play_music(music_name : String = ""): - var old_music = playing_music - playing_music = null - if old_music: - await set_volume(old_music, MIN_VOLUME).finished - if old_music and old_music != playing_music: - old_music.stop() - reset_volume(old_music) - if music_name: - var player := %Musics.find_child(music_name) as AudioStreamPlayer - if player: - playing_music = player - player.play() - set_volume(player, get_volume_from_parent(player)) - else: - printerr("Music %s not found" % music_name) - -func play_ambiance(ambiance_name : String = ""): - var old_ambiance = playing_ambiance - playing_ambiance = null - if old_ambiance: - await set_volume(old_ambiance, MIN_VOLUME).finished - if old_ambiance and old_ambiance != playing_ambiance: - old_ambiance.stop() - reset_volume(old_ambiance) - if ambiance_name: - var player := %Ambiance.find_child(ambiance_name) as AudioStreamPlayer - if player: - playing_ambiance = player - player.play() - set_volume(player, get_volume_from_parent(player)) - else: - printerr("Ambiance %s not found" % ambiance_name) -======= class AudioAction: pass @@ -321,4 +213,3 @@ class AudioLaunch extends AudioAction: class AudioStop extends AudioAction: pass ->>>>>>> 65645d976a98b5bfd030770764e72893cb8d9ccd