1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- //------------------------------------------------------------
- // Game Framework
- // Copyright © 2013-2021 loyalsoft. All rights reserved.
- // Homepage: http://www.game7000.com/
- // Feedback: http://www.game7000.com/
- //------------------------------------------------------------
- namespace GameFramework.Resource
- {
- internal sealed partial class ResourceManager : GameFrameworkModule, IResourceManager
- {
- private sealed partial class ResourceLoader
- {
- private sealed class LoadSceneTask : LoadResourceTaskBase
- {
- private LoadSceneCallbacks m_LoadSceneCallbacks;
- public LoadSceneTask()
- {
- m_LoadSceneCallbacks = null;
- }
- public override bool IsScene
- {
- get
- {
- return true;
- }
- }
- public static LoadSceneTask Create(string sceneAssetName, int priority, ResourceInfo resourceInfo, string[] dependencyAssetNames, LoadSceneCallbacks loadSceneCallbacks, object userData)
- {
- LoadSceneTask loadSceneTask = ReferencePool.Acquire<LoadSceneTask>();
- loadSceneTask.Initialize(sceneAssetName, null, priority, resourceInfo, dependencyAssetNames, userData);
- loadSceneTask.m_LoadSceneCallbacks = loadSceneCallbacks;
- return loadSceneTask;
- }
- public override void Clear()
- {
- base.Clear();
- m_LoadSceneCallbacks = null;
- }
- public override void OnLoadAssetSuccess(LoadResourceAgent agent, object asset, float duration)
- {
- base.OnLoadAssetSuccess(agent, asset, duration);
- if (m_LoadSceneCallbacks.LoadSceneSuccessCallback != null)
- {
- m_LoadSceneCallbacks.LoadSceneSuccessCallback(AssetName, duration, UserData);
- }
- }
- public override void OnLoadAssetFailure(LoadResourceAgent agent, LoadResourceStatus status, string errorMessage)
- {
- base.OnLoadAssetFailure(agent, status, errorMessage);
- if (m_LoadSceneCallbacks.LoadSceneFailureCallback != null)
- {
- m_LoadSceneCallbacks.LoadSceneFailureCallback(AssetName, status, errorMessage, UserData);
- }
- }
- public override void OnLoadAssetUpdate(LoadResourceAgent agent, LoadResourceProgress type, float progress)
- {
- base.OnLoadAssetUpdate(agent, type, progress);
- if (type == LoadResourceProgress.LoadScene)
- {
- if (m_LoadSceneCallbacks.LoadSceneUpdateCallback != null)
- {
- m_LoadSceneCallbacks.LoadSceneUpdateCallback(AssetName, progress, UserData);
- }
- }
- }
- public override void OnLoadDependencyAsset(LoadResourceAgent agent, string dependencyAssetName, object dependencyAsset)
- {
- base.OnLoadDependencyAsset(agent, dependencyAssetName, dependencyAsset);
- if (m_LoadSceneCallbacks.LoadSceneDependencyAssetCallback != null)
- {
- m_LoadSceneCallbacks.LoadSceneDependencyAssetCallback(AssetName, dependencyAssetName, LoadedDependencyAssetCount, TotalDependencyAssetCount, UserData);
- }
- }
- }
- }
- }
- }
|