Пример #1
0
        private static void Stop(SoundParam param)
        {
            param.source_.Stop();

            if (param.onFinish != null)
            {
                param.onFinish();
            }

            param.source_.clip = null;
        }
Пример #2
0
        public static void Stop(string file_name, int category_id, float fade_time = 0.0f)
        {
            List <SoundParam> category_play_list = sound_play_list_[category_id];

            Debug.Assert(category_play_list != null, "The category doesn't exist !!!!");

            SoundParam param = category_play_list.Find((par) => { return(par.file_name_ == file_name); });

            Debug.Assert(param != null, "The filename doesn't exist !!!!");

            mono_behaviour_.StartCoroutine(FadeOut(param, fade_time,
                                                   () => {
                category_play_list.Remove(param);
                if (param.onFinish != null)
                {
                    param.onFinish();
                }
            }));
        }
Пример #3
0
        private static IEnumerator StopDetect(SoundParam param)
        {
            Debug.Assert(param != null, "param is null!!!!!");

            while (param.source_.isPlaying || param.is_pause_)
            {
                yield return(null);
            }

            List <SoundParam> category_play_list = sound_play_list_[param.category_id_];

            param.source_.clip = null;

            if (param.onFinish != null)
            {
                param.onFinish();
            }

            category_play_list.Remove(param);
        }