コード例 #1
0
 internal EventCenter(KernelInitializeData initializeData)
     : this(initializeData.EventTypes
            , "EventCenter"
            , (int)BehaviourPriority.EventCenter
            , BehaviourGroup.Default.ToString())
 {
 }
コード例 #2
0
        /// <summary>
        /// 初始化相关配置,外部调用
        /// </summary>
        /// <param name="initializeData"></param>
        /// <returns></returns>
        public IEnumerator InitializeAsync(KernelInitializeData initializeData)
        {
            m_InitStateTitle        = initializeData.InitStateTitle;
            m_CheckUpdateStateTitle = initializeData.CheckUpdateStateTitle;
            yield return(null);

            // 恢复Update
            SetEnable(true);
        }
コード例 #3
0
        internal static IEnumerator InitializePackage(KernelInitializeData initializeData)
        {
#if UNITY_EDITOR
            EditorAssetManager editorAssetManager = new EditorAssetManager();
            Kernel.AssetManager = editorAssetManager;
            yield return(editorAssetManager.InitializeAsync(initializeData));
#else
            yield return(null);
#endif
        }
コード例 #4
0
        /// <summary>
        /// 初始化相关配置,外部调用
        /// </summary>
        /// <param name="initializeData"></param>
        /// <returns></returns>
        public IEnumerator InitializeAsync(KernelInitializeData initializeData)
        {
            IPathUtility.ServerDownloadUrl = initializeData.ServerDownLoadUrl;
            IPathUtility.VersionFilePath   = initializeData.AssetVersionFileName;
            m_UpdatingStateTitle           = initializeData.UpdatingStateTitle;
            m_UpdateFinishTitle            = initializeData.UpdateFinishTitle;
            m_ServerVersionFilePath        = IPathUtility.GetServerDownloadVersionFilePath();
            m_DownloadTimeOut         = initializeData.DownloadTimeOut;
            m_DownloadMaxRoutineCount = initializeData.DownloadMaxRoutineCount;
            m_RoutineArray            = new TempDownloadRoutine[m_DownloadMaxRoutineCount];
            yield return(null);

            // 恢复Update
            SetEnable(true);
        }
コード例 #5
0
        /// <summary>
        /// 初始化相关配置,外部调用
        /// </summary>
        /// <param name="initializeData"></param>
        /// <returns></returns>
        public IEnumerator InitializeAsync(KernelInitializeData initializeData)
        {
            //加载Bundle依赖文件
            string bundleInfosJson = string.Empty;

            try
            {
                bundleInfosJson = File.ReadAllText(initializeData.BundleMapFile);
                m_BundleInfos   = JsonMapper.ToObject <BundleInfo[]>(new JsonReader(bundleInfosJson));
            }
            catch (Exception e)
            {
                MDebug.LogError(LOG_TAG, $"解析BundleMap:({initializeData.BundleMapFile})失败。\nJson:({bundleInfosJson})\n\n{e.ToString()}");
            }

            yield return(null);

            //加载AssetMap
            string assetInfosJson = string.Empty;

            try
            {
                assetInfosJson = File.ReadAllText(initializeData.AssetInfosFile);
                m_AssetInfos   = JsonMapper.ToObject <AssetInfo[]>(new JsonReader(assetInfosJson));
            }
            catch (Exception e)
            {
                MDebug.LogError(LOG_TAG, $"解析AssetInfos:({initializeData.AssetInfosFile})失败。\nJson:({assetInfosJson})\n\n{e.ToString()}");
            }
            yield return(null);

            m_RootBundlePath = initializeData.BundlePath;

            m_BundleActionRequests = new Queue <BundleActionRequest>();
            m_BundleHandlerPool    = new ObjectPool <BundleHandler>();
            m_BundleHandlers       = new BundleHandler[m_BundleInfos.Length];

            m_AssetActionRequests              = new Queue <AssetActionRequest>();
            m_AssetHandlerPool                 = new ObjectPool <AssetHandler>();
            m_AssetHandlers                    = new AssetHandler[m_AssetInfos.Length];
            m_AssetToAssetHandlerMap           = new Dictionary <UnityEngine.Object, AssetHandler>(m_AssetInfos.Length);
            m_AssetToGameObjectInstantiateData = new Dictionary <string, Queue <GameObjectInstantiateData> >();
            m_GameObjectToAsset                = new Dictionary <GameObject, UnityEngine.Object>();
            // 恢复Update
            SetEnable(true);
        }
コード例 #6
0
        private IEnumerator Start()
        {
            DontDestroyOnLoad(this);
            KernelInitializeData kernelInitializeData = new KernelInitializeData().RestoreToDefault();

            kernelInitializeData.EventTypes = new List <Type>
            {
                //typeof(SlideEventNames)
            };
            kernelInitializeData.LuaEnableHighPerformanceLog = true;

#if UNITY_EDITOR
            kernelInitializeData.LoadLuaByAssetDatabaseWhenEditor = true;
#endif

            yield return(Kernel.Initialize(this, kernelInitializeData));

            OnStart();
        }
コード例 #7
0
        private IEnumerator InitializeAsync(KernelInitializeData initializeData)
        {
            //加载AssetMap
            string assetInfosJson = string.Empty;

            try
            {
                assetInfosJson = File.ReadAllText(initializeData.AssetInfosFile);
                m_AssetInfos   = JsonMapper.ToObject <AssetInfo[]>(new JsonReader(assetInfosJson));
            }
            catch (Exception e)
            {
                MDebug.LogError(LOG_TAG, $"解析AssetInfos:({initializeData.AssetInfosFile})失败。\nJson:({assetInfosJson})\n\n{e.ToString()}");
            }
            m_AssetCallBackDic = new Dictionary <int, Action <AssetKey, UnityEngine.Object> >();
            m_AssetToGameObjectInstantiateData = new Dictionary <string, Queue <GameObjectInstantiateData> >();
            yield return(null);

            SetEnable(true);
        }
コード例 #8
0
        private IEnumerator Start()
        {
            DontDestroyOnLoad(this);
            KernelInitializeData kernelInitializeData = new KernelInitializeData().RestoreToDefault();

            kernelInitializeData.BundleMapFile  = UnityEngine.Application.dataPath + "/../../ExampleGame/SlideCube/Editor/Build/BundleInfos.json";
            kernelInitializeData.BundlePath     = UnityEngine.Application.dataPath + "/../../ExampleGame/SlideCube/Editor//Build/StandaloneWindows64/AssetBundles";
            kernelInitializeData.AssetInfosFile = UnityEngine.Application.dataPath + "/../../ExampleGame/SlideCube/Editor/Build/AssetInfos.json";
            kernelInitializeData.EventTypes     = new List <Type>
            {
                typeof(SlideEventNames)
            };
            kernelInitializeData.LuaEnableHighPerformanceLog = true;

#if UNITY_EDITOR
            kernelInitializeData.LoadLuaByAssetDatabaseWhenEditor = true;
#endif

            yield return(Kernel.Initialize(this, kernelInitializeData));

            OnStart();
        }
コード例 #9
0
 public EntityManager(KernelInitializeData initializeData)
 {
     m_InstanceIDToEntities = new Dictionary <int, BaseEntity>();
 }