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

namespace NodeCanvas.Tasks.MasterAudioIntegration{

	[Category("MasterAudio/Group")]
	[Icon("MasterAudio")]
	public class UnsoloGroup : ActionTask {

		public bool allGroups = false;
		public BBParameter<MasterAudioGroup> soundGroup;

		protected override string info{
			get {return string.Format("Unsolo Group {0}", allGroups? "All" : soundGroup.ToString());}
		}

		protected override string OnInit(){
			if (!allGroups && soundGroup.isNull)
				return "Either check all allGroups or specify a Group";
			return null;
		}

		protected override void OnExecute(){

			if (allGroups){
				foreach(var group in MasterAudio.RuntimeSoundGroupNames){
					MasterAudio.UnsoloGroup(group);
				}
			} else {
				MasterAudio.UnsoloGroup(soundGroup.value.name);
			}

			EndAction();
		}
	}
}