Example #1
0
        public static void Update()
        {
            m_hudTimeFromLastCuePlayed += MyConstants.PHYSICS_STEP_SIZE_IN_MILLISECONDS;

            // if actual hud cue still playing
            if (m_activeCue.HasValue && m_activeCue.Value.Cue.IsPlaying)
            {
                return;
            }

            // we dequeue next hud cue a play it
            if (m_hudCuesQueue.Count > 0)
            {
                // we want have small delay between hud cues
                if (m_hudTimeFromLastCuePlayed >= m_hudCueDelay || m_activeCue == null)
                {
                    MyHudCue nextHudCue = m_hudCuesQueue.Dequeue();
                    var      cue        = MyAudio.PlayCueNow2D(nextHudCue.CueEnum, nextHudCue.Volume);

                    m_activeCue = new MyActiveCueInfo()
                    {
                        Cue = cue, CueEnum = nextHudCue.CueEnum
                    };
                    m_hudTimeFromLastCuePlayed = 0;
                }
            }
            else
            {
                m_activeCue = null;
            }
        }
Example #2
0
        /// <summary>
        /// Cleans hud audio queue and stops any sounds
        /// </summary>
        public static void Reset()
        {
            if (m_hudCuesQueue != null)
            {
                m_hudCuesQueue.Clear();
            }

            if (m_activeCue.HasValue)
            {
                m_activeCue.Value.Cue.Stop(StopFlags.Release);
                m_activeCue = null;
            }
        }
Example #3
0
        /// <summary>
        /// Cleans hud audio queue and stops any sounds
        /// </summary>
        public static void Reset()
        {
            if (m_hudCuesQueue != null)
            {
                m_hudCuesQueue.Clear();
            }

            if (m_activeCue.HasValue)
            {
                m_activeCue.Value.Cue.Stop(StopFlags.Release);
                m_activeCue = null;
            }
        }
Example #4
0
        public static void Update()
        {
            m_hudTimeFromLastCuePlayed += MyConstants.PHYSICS_STEP_SIZE_IN_MILLISECONDS;

            // if actual hud cue still playing
            if (m_activeCue.HasValue && m_activeCue.Value.Cue.IsPlaying)
            {
                return;
            }

            // we dequeue next hud cue a play it
            if (m_hudCuesQueue.Count > 0)
            {
                // we want have small delay between hud cues
                if (m_hudTimeFromLastCuePlayed >= m_hudCueDelay || m_activeCue == null)
                {
                    MyHudCue nextHudCue = m_hudCuesQueue.Dequeue();
                    var cue = MyAudio.PlayCueNow2D(nextHudCue.CueEnum, nextHudCue.Volume);

                    m_activeCue = new MyActiveCueInfo() { Cue = cue, CueEnum = nextHudCue.CueEnum };
                    m_hudTimeFromLastCuePlayed = 0;
                }
            }
            else
            {
                m_activeCue = null;
            }
        }