Exemple #1
0
        public static SoundEffect FadeOutSE(float time)
        {
            SoundBuilder builder = new SoundBuilder();
            SoundEffect  e       = builder.Source(SoundEffect.SoundType.SE)
                                   .TotalTime(time)
                                   .Operater(SoundEffect.OperateType.Fadeout)
                                   .Get();

            return(e);
        }
Exemple #2
0
        public static SoundEffect UnpauseBGM()
        {
            SoundBuilder builder = new SoundBuilder();
            SoundEffect  e       = builder.Source(SoundEffect.SoundType.BGM)
                                   .TotalTime(0)
                                   .Operater(SoundEffect.OperateType.Unpause)
                                   .Get();

            return(e);
        }
Exemple #3
0
        public static SoundEffect SetSE(string fname, bool loop)
        {
            SoundBuilder builder = new SoundBuilder();
            SoundEffect  e       = builder.Source(SoundEffect.SoundType.SE)
                                   .TotalTime(0)
                                   .Loop(loop)
                                   .Operater(SoundEffect.OperateType.Set)
                                   .Get();

            return(e);
        }
Exemple #4
0
        public static SoundEffect RemoveBGM()
        {
            SoundBuilder builder = new SoundBuilder();
            SoundEffect  e       = builder.Source(SoundEffect.SoundType.BGM)
                                   .TotalTime(0)
                                   .Operater(SoundEffect.OperateType.Set)
                                   .Clip("")
                                   .Get();

            return(e);
        }
Exemple #5
0
        public static SoundEffect FadeInBGM(float time)
        {
            SoundBuilder builder = new SoundBuilder();
            AudioSource  aus     = GameObject.Find("GameManager").GetComponent <SoundManager>().currentBGM;
            SoundEffect  e       = builder.Source(SoundEffect.SoundType.BGM)
                                   .TotalTime(time)
                                   .Operater(SoundEffect.OperateType.Fadein)
                                   .Get();

            return(e);
        }
        public static SoundEffect VolumeDownBGM(float time, float change)
        {
            SoundBuilder builder = new SoundBuilder();
            SoundEffect  e       = builder.Source(SoundEffect.SoundType.BGM)
                                   .Operater(SoundEffect.OperateType.VolumeDown)
                                   .TotalTime(time)
                                   .Argus(change)
                                   .Get();

            return(e);
        }
Exemple #7
0
        /// <summary>
        /// 继续背景音乐
        /// </summary>
        /// <param name="fadein">淡入时间,默认0</param>
        /// <returns></returns>
        public SoundPiece UnpauseBGM(float fadein = 0f)
        {
            Queue <SoundEffect> effectsq = new Queue <SoundEffect>();

            effectsq.Enqueue(SoundBuilder.UnpauseBGM());
            if (fadein != 0f)
            {
                effectsq.Enqueue(SoundBuilder.FadeInBGM(fadein));
            }
            return(new SoundPiece(id++, effectsq));
        }
        /// <summary>
        /// 停止当前正在播放的音效
        /// </summary>
        /// <param name="fadeout">淡出时间,默认0s</param>
        /// <returns></returns>
        public SoundPiece StopSE(float fadeout = 0f)
        {
            Queue <SoundEffect> effectsq = new Queue <SoundEffect>();

            if (fadeout != 0f)
            {
                effectsq.Enqueue(SoundBuilder.VolumeDownSE(fadeout, 1));
            }
            effectsq.Enqueue(SoundBuilder.RemoveSE());
            return(new SoundPiece(id++, effectsq));
        }
        public static SoundEffect SetBGM(string fname, float time, bool loop)
        {
            SoundBuilder builder = new SoundBuilder();
            SoundEffect  e       = builder.Source(SoundEffect.SoundType.BGM)
                                   .Operater(SoundEffect.OperateType.Set)
                                   .TotalTime(time)
                                   .Clip(fname)
                                   .Loop(loop)
                                   .Get();

            return(e);
        }
Exemple #10
0
        /// <summary>
        /// 暂停背景音乐
        /// </summary>
        /// <param name="fadeout">淡出时间,默认0s</param>
        /// <returns></returns>
        public SoundPiece PauseBGM(float fadeout = 0f)
        {
            Queue <SoundEffect> effectsq = new Queue <SoundEffect>();

            if (fadeout != 0f)
            {
                effectsq.Enqueue(SoundBuilder.FadeOutBGM(fadeout));
            }
            effectsq.Enqueue(SoundBuilder.PauseBGM());
            return(new SoundPiece(id++, effectsq));
            //return null;
        }