public static void PlayOneShot(AudioBundle bundle, string audioName, Action onAudioEnd, float volumeScale = 1.0f) { AudioClip clip = GetClip(bundle, audioName); SFXSource.PlayOneShot(clip, volumeScale); Framework.Extensions.DelayAction(clip.length, onAudioEnd); }
public static AudioSource SetClip(AudioBundle bundle, string audioName, AudioSourceType source = AudioSourceType.SFX) { AudioClip clip = GetClip(bundle, audioName); GetSource(source).clip = clip; return(SFXSource); }
public static void Play(AudioBundle bundle, string audioName, AudioSourceType source = AudioSourceType.SFX, ulong delay = 0) { AudioClip clip = GetClip(bundle, audioName); GetSource(source).clip = clip; GetSource(source).Play(delay); }
public static void Play(AudioBundle bundle, string audioName, Action onAudioEnd, AudioSourceType source = AudioSourceType.SFX, ulong delay = 0) { AudioClip clip = GetClip(bundle, audioName); GetSource(source).clip = clip; GetSource(source).Play(delay); Framework.Extensions.DelayAction(clip.length + delay, onAudioEnd); }
public static AudioClip GetClip(AudioBundle bundle, string audioName) { int length = bundle.AudioObjects.Length; for (int i = 0; i < length; i++) { if (bundle.AudioObjects[i].Name == audioName) { return(bundle.AudioObjects[i].Clip); } } Debug.LogError("Audio clip named " + audioName + " in this bundle not found"); return(null); }
public static void RemoveFromPool(AudioBundle bundle) { audioPool.Remove(bundle.name); }
public static void AddToPool(AudioBundle bundle) { AddToPool(bundle.name, bundle); }
public static void AddToPool(string bundleName, AudioBundle bundle) { audioPool[bundleName] = bundle; }
public static void PlayOneShot(AudioBundle bundle, string audioName, float volumeScale = 1.0f) { SFXSource.PlayOneShot(GetClip(bundle, audioName), volumeScale); }