using System.Collections; using System.Collections.Generic; using UnityEngine; namespace MoreMountains.Tools { public enum MMSoundManagerTrackEventTypes { MuteTrack, UnmuteTrack, SetVolumeTrack, PlayTrack, PauseTrack, StopTrack, FreeTrack } /// /// This feedback will let you mute, unmute, play, pause, stop, free or set the volume of a selected track /// /// Example : MMSoundManagerTrackEvent.Trigger(MMSoundManagerTrackEventTypes.PauseTrack,MMSoundManager.MMSoundManagerTracks.UI); /// will pause the entire UI track /// public struct MMSoundManagerTrackEvent { /// the order to pass to the track public MMSoundManagerTrackEventTypes TrackEventType; /// the track to pass the order to public MMSoundManager.MMSoundManagerTracks Track; /// if in SetVolume mode, the volume to which to set the track to public float Volume; public MMSoundManagerTrackEvent(MMSoundManagerTrackEventTypes trackEventType, MMSoundManager.MMSoundManagerTracks track = MMSoundManager.MMSoundManagerTracks.Master, float volume = 1f) { TrackEventType = trackEventType; Track = track; Volume = volume; } static MMSoundManagerTrackEvent e; public static void Trigger(MMSoundManagerTrackEventTypes trackEventType, MMSoundManager.MMSoundManagerTracks track = MMSoundManager.MMSoundManagerTracks.Master, float volume = 1f) { e.TrackEventType = trackEventType; e.Track = track; e.Volume = volume; MMEventManager.TriggerEvent(e); } } }