﻿using NodeCanvas.Framework;
using ParadoxNotion.Design;
using DarkTonic.MasterAudio;

namespace NodeCanvas.Tasks.MasterAudioIntegration{

	[Category("MasterAudio/Playlist")]
	[Icon("MasterAudio")]
	public class UnpausePlaylist : ActionTask {

		public bool allPlaylists = false;
		public BBParameter<PlaylistController> playlistController;

		protected override string info{
			get {return string.Format("Unpause Playlist {0}", allPlaylists? "All" : playlistController.ToString());}
		}

		protected override string OnInit(){
			if (!allPlaylists && playlistController.isNull)
				return "Either check all AllPlaylists or specify a playlistController";
			return null;
		}

		protected override void OnExecute(){

			if (allPlaylists){
				foreach(var pl in PlaylistController.Instances){
					MasterAudio.UnpausePlaylist(pl.name);
				}
			} else {
				MasterAudio.UnpausePlaylist(playlistController.value.name);
			}

			EndAction();
		}
	}
}