private static void ExecuteCallback(ref PlayAudioCallback startPlayCallback, AudioObject audioItem) { try { if (startPlayCallback != null) { startPlayCallback(audioItem); } } catch (Exception exception) { Debug.LogException(exception); } startPlayCallback = null; }
/// <summary> /// Callback for playing audio. /// </summary> public static void SetPlayAudioCallback(PlayAudioCallback callback) { _playAudioCallback = callback; Noesis_SetPlayAudioCallback(callback != null ? _playAudio : null); }
public void RequestPlayAudioID(String audioID, Int32 requestPriority, Single maxRequestDelay = -1f, Transform parentObj = null, Single volume = 1f, Single delay = 0f, Single startTime = 0f, PlayAudioCallback startPlayCallback = null) { Vector3 worldPosition = (!(parentObj == null)) ? parentObj.position : default(Vector3); RequestPlayAudioID(audioID, requestPriority, maxRequestDelay, worldPosition, parentObj, volume, delay, startTime, startPlayCallback); }
public void RequestPlayAudioID(String audioID, Int32 requestPriority, Single maxRequestDelay = -1f, Vector3 worldPosition = default(Vector3), Transform parentObj = null, Single volume = 1f, Single delay = 0f, Single startTime = 0f, PlayAudioCallback startPlayCallback = null) { if (audioID == null) { ExecuteCallback(ref startPlayCallback, null); return; } String text = m_CategoryMap.FindControllerName(audioID); if (text == null) { Debug.LogError("Unknow AudioID: " + audioID); return; } if (FindCategory(text) != null) { AudioObject audioItem = AudioController.Play(audioID, worldPosition, parentObj, volume, delay, startTime); ExecuteCallback(ref startPlayCallback, audioItem); return; } AudioPlayRequest @object = new AudioPlayRequest { RequestStartTime = Time.time, MaxRequestDelay = maxRequestDelay, AudioID = audioID, WorldPosition = worldPosition, ParentObj = parentObj, Volume = volume, Delay = delay, StartTime = startTime, StartPlayCallback = startPlayCallback }; Request(text, requestPriority, new AudioControllerCallback(@object.DoneLoad)); }
public void RequestPlayAudioID(String audioID, Int32 requestPriority, Single maxRequestDelay, PlayAudioCallback startPlayCallback) { AudioListener currentAudioListener = AudioController.GetCurrentAudioListener(); if (currentAudioListener == null) { Debug.LogWarning("No AudioListener found in the scene"); return; } Transform transform = currentAudioListener.transform; RequestPlayAudioID(audioID, requestPriority, maxRequestDelay, transform.position + transform.forward, null, 1f, 0f, 0f, startPlayCallback); }