Exemple #1
0
        public void InitUnloadData(
            string address,
            string path,
            OnSceneLoadComplete complete,
            OnSceneLoadProgress progress,
            SystemObject userData)
        {
            this.address     = address;
            this.scenePath   = path;
            this.sceneName   = Path.GetFileNameWithoutExtension(path);
            completeCallback = complete;
            progressCallback = progress;
            this.userData    = userData;

            handler = new SceneHandler(address, sceneName, scenePath);
            state   = SceneLoaderDataState.Unload;
        }
Exemple #2
0
        internal void DoComplete(Scene scene)
        {
            state = SceneLoaderDataState.Finished;

            handler.IsDone      = true;
            handler.TargetScene = scene;

            if (!isActiveWhenLoaded && scene.IsValid())
            {
                GameObject[] objs = scene.GetRootGameObjects();
                foreach (var obj in objs)
                {
                    obj.SetActive(false);
                }
            }

            progressCallback?.Invoke(address, 1.0f, userData);
            completeCallback?.Invoke(address, scene, userData);
        }
Exemple #3
0
        public void InitLoadData(
            string address,
            string path,
            OnSceneLoadComplete complete,
            OnSceneLoadProgress progress,
            LoadSceneMode sceneMode,
            bool isActive,
            SystemObject userData)
        {
            this.address            = address;
            this.scenePath          = path;
            this.sceneName          = Path.GetFileNameWithoutExtension(path);
            completeCallback        = complete;
            progressCallback        = progress;
            this.sceneMode          = sceneMode;
            this.isActiveWhenLoaded = isActive;
            this.userData           = userData;

            handler = new SceneHandler(address, sceneName, scenePath);
            state   = SceneLoaderDataState.Load;
        }