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

namespace NodeCanvas.Tasks.MasterAudioIntegration{

	[Category("MasterAudio")]
	[Icon("MasterAudio")]
	public class StopTransformSound : ActionTask<Transform> {

		public bool allGroups;
		public BBParameter<MasterAudioGroup> soundGroup;

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

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

		protected override void OnExecute(){

			if (allGroups){
				MasterAudio.StopAllSoundsOfTransform(agent);
			} else {
				MasterAudio.StopSoundGroupOfTransform(agent, soundGroup.value.name);
			}

			EndAction();
		}
	}
}