コード例 #1
0
 private static void ExecuteCallback(ref PlayAudioCallback startPlayCallback, AudioObject audioItem)
 {
     try
     {
         if (startPlayCallback != null)
         {
             startPlayCallback(audioItem);
         }
     }
     catch (Exception exception)
     {
         Debug.LogException(exception);
     }
     startPlayCallback = null;
 }
コード例 #2
0
ファイル: NoesisGUI.cs プロジェクト: Hengle/Managed
 /// <summary>
 /// Callback for playing audio.
 /// </summary>
 public static void SetPlayAudioCallback(PlayAudioCallback callback)
 {
     _playAudioCallback = callback;
     Noesis_SetPlayAudioCallback(callback != null ? _playAudio : null);
 }
コード例 #3
0
        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);
        }
コード例 #4
0
        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));
        }
コード例 #5
0
        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);
        }