Beispiel #1
0
 public void ExeCoroutineTask(Action startFunc, Action <object> callBack, object pararm)
 {
     if (m_bIsLoading)
     {
         LoadTaskData data = new LoadTaskData();
         data.startFunc = startFunc;
         data.callBack  = callBack;
         data.pararm    = pararm;
         m_listLoadData.Add(data);
     }
     else
     {
         m_coroutine = StartCoroutine(DoCoroutineTask(startFunc, callBack, pararm));
     }
 }
Beispiel #2
0
    static private void CheckAsyncLoad()
    {
        if (m_listLoadData.Count == 0)
        {
            return;
        }
        LoadTaskData data = m_listLoadData[0];

        m_listLoadData.RemoveAt(0);

        if (data.bSprite)
        {
            m_coroutine = m_assetManager.StartCoroutine(GetAssetAsync <Sprite>(data.url, data.func));
        }
        else
        {
            m_coroutine = m_assetManager.StartCoroutine(GetAssetAsync <UnityEngine.Object>(data.url, data.func));
        }
    }
Beispiel #3
0
    private void CheckAsyncLoad()
    {
        if (m_listLoadData.Count == 0)
        {
            return;
        }
        LoadTaskData data = m_listLoadData[0];

        m_listLoadData.RemoveAt(0);
        if (string.IsNullOrEmpty(data.url))
        {
            m_coroutine = StartCoroutine(DoCoroutineTask(data.startFunc, data.callBack, data.pararm));
            //ExeCoroutineTask(data.startFunc, data.callBack, data.pararm);
        }
        else
        {
            m_coroutine = StartCoroutine(GetAssetAsync <UnityEngine.Object>(data.url, data.func));
            //LoadResAsync(data.url, data.func);
        }
    }
Beispiel #4
0
 static private void LoadResAsync(string url, Action <UnityEngine.Object> callBack, bool bSprite)
 {
     if (m_bIsLoading)
     {
         LoadTaskData data = new LoadTaskData();
         data.url     = url;
         data.func    = callBack;
         data.bSprite = bSprite;
         m_listLoadData.Add(data);
     }
     else
     {
         if (bSprite)
         {
             m_coroutine = m_assetManager.StartCoroutine(GetAssetAsync <Sprite>(url, callBack));
         }
         else
         {
             m_coroutine = m_assetManager.StartCoroutine(GetAssetAsync <UnityEngine.Object>(url, callBack));
         }
     }
 }