extends Node func _ready() -> void: print("Loaded Music singleton") var change_slow_actions : Array = [] var gameSpeed : float = 1; var musicType: int = 0; func setSlowMusic(): setMusicType( -1 ) func setFastMusic(): setMusicType( 1 ) func setNormalMusic(): setMusicType( 0 ) func setMusicType( type:int ): musicType = type; gameSpeed = 0 if type == 1: gameSpeed = 2 if type == -1: gameSpeed = 0.5 func register_change_action(change_action : Node) -> void: print("Registered change action") change_slow_actions.append(change_action) func unregister_change_action(change_action : Node) -> void: print("Unregistered change action") change_slow_actions.erase(change_action) func change_music() -> void: for change_action in change_slow_actions: change_action.execute()