/// <summary> /// 创建加载场景失败事件。 /// </summary> /// <param name="e">内部事件。</param> /// <returns>创建的加载场景失败事件。</returns> public static OuterLoadSceneFailureEventArgs Create(InnerLoadSceneFailureEventArgs e) { OuterLoadSceneFailureEventArgs loadSceneFailureEventArgs = ReferencePool.Acquire <OuterLoadSceneFailureEventArgs>(); loadSceneFailureEventArgs.SceneAssetName = e.SceneAssetName; loadSceneFailureEventArgs.ErrorMessage = e.ErrorMessage; loadSceneFailureEventArgs.UserData = e.UserData; return(loadSceneFailureEventArgs); }
private void LoadSceneFailureCallback(string sceneAssetName, LoadResourceStatus status, string errorMessage, object userData) { m_LoadingSceneAssetNames.Remove(sceneAssetName); string appendErrorMessage = Utility.Text.Format("Load scene failure, scene asset name '{0}', status '{1}', error message '{2}'.", sceneAssetName, status.ToString(), errorMessage); if (m_LoadSceneFailureEventHandler != null) { InnerLoadSceneFailureEventArgs loadSceneFailureEventArgs = InnerLoadSceneFailureEventArgs.Create(sceneAssetName, appendErrorMessage, userData); m_LoadSceneFailureEventHandler(this, loadSceneFailureEventArgs); ReferencePool.Release(loadSceneFailureEventArgs); return; } throw new Exception(appendErrorMessage); }