コード例 #1
0
    private static void ProcessResourcePackageCallBack()
    {
        Temp_LoadCompleteList_int.Clear();
        Temp_LoadCompleteList_int.AddRange(m_ResourcePackageWatingForCallBack);
        m_ResourcePackageWatingForCallBack.Clear();

        foreach (int id in Temp_LoadCompleteList_int)
        {
            ResourcePackage packageTemp = AllocResourcePackage(id);
            Temp_resourcePackageCallBackList.Clear();
            Temp_callBackDataList.Clear();

            Temp_resourcePackageCallBackList.AddRange(packageTemp.resourcePackageCallBackList);
            Temp_callBackDataList.AddRange(packageTemp.callBackDataList);
            packageTemp.ClearAsyncCallBackData();

            for (int i = 0; i < Temp_resourcePackageCallBackList.Count; i++)
            {
                System.Action <ResourcePackageCallBackObj> cb = Temp_resourcePackageCallBackList[i];
                ResNode result = AllocResNode(Temp_callBackDataList[i].resInstanceID);

                cb(Temp_callBackDataList[i]);
            }
        }
    }
コード例 #2
0
    private static void RemoveAllResourcePackageCallBackList(string AssetBundleName)
    {
        if (AssetBundleName.Equals(string.Empty))
        {
            return;
        }
        ResourcePackage package = AllocResourcePackage(AssetBundleName);

        package.ClearAsyncCallBackData();
        if (m_ResourcePackageWatingForCallBack.Contains(package.instanceID))
        {
            m_ResourcePackageWatingForCallBack.Remove(package.instanceID);
        }
    }