Example #1
0
        public static void Play(DDMusic music, bool once = false, bool resume = false, double volume = 1.0, int fadeFrameMax = 30)
        {
            if (CurrDestMusic != null)             // ? 再生中
            {
                if (CurrDestMusic == music)
                {
                    return;
                }

                if (1 <= fadeFrameMax)
                {
                    Fade(fadeFrameMax, 0.0, CurrDestVolume);
                }
                else
                {
                    Stop();
                }
            }
            PlayInfos.Enqueue(new PlayInfo(PlayInfo.Command_e.PLAY, music, once, resume, 0.0));
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(new PlayInfo(PlayInfo.Command_e.VOLUME_RATE, music, false, false, volume));
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(null);

            CurrDestMusic  = music;
            CurrDestVolume = volume;
        }
Example #2
0
 public PlayInfo(Command_e command, DDMusic music, bool once, bool resume, double volumeRate)
 {
     this.Command    = command;
     this.Music      = music;
     this.Once       = once;
     this.Resume     = resume;
     this.VolumeRate = volumeRate;
 }
Example #3
0
        public static void Stop()
        {
            if (CurrDestMusic == null)
            {
                return;
            }

            PlayInfos.Enqueue(new PlayInfo(PlayInfo.Command_e.VOLUME_RATE, CurrDestMusic, false, false, 0.0));
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(new PlayInfo(PlayInfo.Command_e.STOP, CurrDestMusic, false, false, 0.0));
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(null);
            PlayInfos.Enqueue(null);

            CurrDestMusic  = null;
            CurrDestVolume = 0.0;
        }
Example #4
0
 public static void Add(DDMusic music)
 {
     Musics.Add(music);
 }