Esempio n. 1
0
 void StartLoader(params ILoader[] loaders)
 {
     if (loaders == null || loaders.Length == 0)
     {
         CLog.Error("错误,没有Loader");
         return;
     }
     foreach (var item in loaders)
     {
         loderList.Add(item);
     }
     IsLoadEnd = false;
     SelfMono.StartCoroutine(IEnumerator_Load());
 }
Esempio n. 2
0
        IEnumerator IEnumerator_Load()
        {
            yield return(new WaitForEndOfFrame());

            Callback_OnStartLoad?.Invoke();
            for (int i = 0; i < loderList.Count; ++i)
            {
                LoadInfo  = loderList[i].GetLoadInfo();
                CurLoader = loderList[i];
                yield return(SelfMono.StartCoroutine(loderList[i].Load()));

                Percent = (i / (float)loderList.Count);
            }
            yield return(new WaitForEndOfFrame());

            Percent   = 1.0f;
            IsLoadEnd = true;
            Callback_OnLoadEnd?.Invoke(LoadEndType.Success, LoadInfo);
            Callback_OnAllLoadEnd1?.Invoke();
            Callback_OnAllLoadEnd2?.Invoke();
            CurLoader = null;
            CLog.Info("All loaded!!");
        }