Esempio n. 1
0
        /// <summary>
        /// 创建卸载场景失败事件。
        /// </summary>
        /// <param name="e">内部事件。</param>
        /// <returns>创建的卸载场景失败事件。</returns>
        public static OuterUnloadSceneFailureEventArgs Create(InnerUnloadSceneFailureEventArgs e)
        {
            OuterUnloadSceneFailureEventArgs unloadSceneFailureEventArgs = ReferencePool.Acquire <OuterUnloadSceneFailureEventArgs>();

            unloadSceneFailureEventArgs.SceneAssetName = e.SceneAssetName;
            unloadSceneFailureEventArgs.UserData       = e.UserData;
            return(unloadSceneFailureEventArgs);
        }
Esempio n. 2
0
        private void UnloadSceneFailureCallback(string sceneAssetName, object userData)
        {
            m_UnloadingSceneAssetNames.Remove(sceneAssetName);
            if (m_UnloadSceneFailureEventHandler != null)
            {
                InnerUnloadSceneFailureEventArgs unloadSceneFailureEventArgs = InnerUnloadSceneFailureEventArgs.Create(sceneAssetName, userData);
                m_UnloadSceneFailureEventHandler(this, unloadSceneFailureEventArgs);
                ReferencePool.Release(unloadSceneFailureEventArgs);
                return;
            }

            throw new Exception(Utility.Text.Format("Unload scene failure, scene asset name '{0}'.", sceneAssetName));
        }