Esempio n. 1
0
 public void Play()
 {
     if (complexSound)
     {
         foreach (XactClip clip in soundClips)
         {
             clip.Play();
         }
     }
     else
     {
         if (wave.Playing)
         {
             wave.Stop();
         }
         wave.Play();
     }
 }
Esempio n. 2
0
        public void Play(Cue player)
        {
            bool paused = Paused;

            _player = player;
            GSGE.Debug.assert(_player != null);
            for (int i = 0; i < _tracks.Length; i++)
            {
                // pick some new randomness
                if (!paused)
                {
                    _tracks[i].Reroll();
                }

                Sound _sound = GetSound(i);
                if (_sound != null)
                {
                    // ensure we dont exceed our audio category limit
                    mData.category.AddPlaying(this);

                    _sound.Play();

                    Update();

                    if (!paused)
                    {
                        player.mData.instances.Add(_sound);
                    }
                }
                else
                {
                    GSGE.Debug.logMessage("missing sound, probably streaming");
                }
                //throw new NotImplementedException();
            }
        }
Esempio n. 3
0
        public static Sound CreateAndPlay(string url, float volume, bool looping)
        {
            Sound sound = new Sound(url, volume, looping);

            sound.Play();

            return sound;
        }
Esempio n. 4
0
 public void Play()
 {
     _sound.Play();
     _paused = false;
 }
Esempio n. 5
0
 void Play(Sound sound)
 {
     sound.Play();
     _sounds.Add(sound);
     if (!_soundReferences.ContainsKey(sound.Name))
     {
         _soundReferences.Add(sound.Name, sound);
         if (!_soundQueues.ContainsKey(sound.Name))
             _soundQueues.Add(sound.Name, new Queue<Sound>());
     }
     else
         _soundQueues[sound.Name].Enqueue(sound);
 }