Raise-Your-Wand/Scripts/musicPlayer.gd

34 lines
945 B
GDScript3
Raw Permalink Normal View History

class_name MusicPlayer extends AudioStreamPlayer
@onready var data: Data = get_node("/root/Root/Data")
var mainMenuPlaylist: Playlist = load("res://Resources/Playlists/mainMenu.tres")
var tavernPlaylist: Playlist = load("res://Resources/Playlists/tavern.tres")
var arenaPlaylist: Playlist = load("res://Resources/Playlists/arena.tres")
var currentLoc: Playlist
# Called when the node enters the scene tree for the first time.
func _ready():
mainMenuPlaylist.init(false)
tavernPlaylist.init(true)
arenaPlaylist.init(true)
currentLoc = mainMenuPlaylist
setLoc(data.loc)
func _onSongFinished() -> void:
stream = load(currentLoc.getNext())
play()
func setLoc(loc: Data.Location):
currentLoc.index = 0
stop()
match loc:
Data.Location.MAINMENU:
currentLoc = mainMenuPlaylist
Data.Location.TAVERN:
currentLoc = tavernPlaylist
Data.Location.ARENA:
currentLoc = arenaPlaylist
Data.Location.DEAD:
pass
_onSongFinished()