Files
2025-04-14 09:13:22 +02:00

39 lines
1.2 KiB
GDScript

extends StaticBody2D
var songs = [
"res://assest/music/chartreuse blues.ogg",
"res://assest/music/latino_accords_et_impro.ogg",
"res://assest/music/balade du grand nord.ogg",
]
var current_song = 0
func _ready() -> void:
$AnimationPlayer.play("play")
func _process(delta: float) -> void:
if $AudioStreamPlayer2D.get_playback_position() != 0:
GameState.float_thomas_music_position = $AudioStreamPlayer2D.get_playback_position()
func _on_load_from_game_state() -> void:
if GameState.float_thomas_music_position > 1:
$AudioStreamPlayer2D.seek(GameState.float_thomas_music_position)
print("resume from pause ", songs[current_song], "at ", GameState.float_thomas_music_position)
$AudioStreamPlayer2D.stream_paused = false
func play_next_song():
current_song += 1
if current_song == songs.size():
current_song = 0
print("play ", songs[current_song])
$AudioStreamPlayer2D.stream= load(songs[current_song]);
GameState.float_thomas_music_position = 0
$AudioStreamPlayer2D.play(GameState.float_thomas_music_position)
func _on_outside_unload_from_screen() -> void:
$AudioStreamPlayer2D.stream_paused = true
func _on_audio_stream_player_2d_finished() -> void:
play_next_song()