예제 #1
0
        /// <summary>
        /// 使用单机模式并初始化资源。
        /// </summary>
        /// <param name="initResourcesCompleteCallback">使用单机模式并初始化资源完成的回调函数。</param>
        public void InitResources(InitResourcesCompleteCallback initResourcesCompleteCallback)
        {
            if (initResourcesCompleteCallback == null)
            {
                throw new GameFrameworkException("Init resources complete callback is invalid.");
            }

            if (m_ResourceMode == ResourceMode.Unspecified)
            {
                throw new GameFrameworkException("You must set resource mode first.");
            }

            if (m_ResourceMode != ResourceMode.Package)
            {
                throw new GameFrameworkException("You can not use InitResources without package resource mode.");
            }

            if (m_ResourceIniter == null)
            {
                throw new GameFrameworkException("You can not use InitResources at this time.");
            }

            m_RefuseSetCurrentVariant       = true;
            m_InitResourcesCompleteCallback = initResourcesCompleteCallback;
            m_ResourceIniter.InitResources(m_CurrentVariant);
        }
예제 #2
0
        /// <summary>
        /// 初始化资源管理器的新实例。
        /// </summary>
        public ResourceManager()
        {
            m_AssetInfos                    = null;
            m_ResourceInfos                 = null;
            m_ReadWriteResourceInfos        = new SortedDictionary <ResourceName, ReadWriteResourceInfo>(new ResourceNameComparer());
            m_CachedBytesForEncryptedString = new byte[byte.MaxValue];

            m_ResourceIniter       = null;
            m_VersionListProcessor = null;
            m_ResourceChecker      = null;
            m_ResourceUpdater      = null;
            m_ResourceLoader       = new ResourceLoader(this);

            m_ResourceHelper                  = null;
            m_ReadOnlyPath                    = null;
            m_ReadWritePath                   = null;
            m_ResourceMode                    = ResourceMode.Unspecified;
            m_RefuseSetCurrentVariant         = false;
            m_CurrentVariant                  = null;
            m_UpdatePrefixUri                 = null;
            m_ApplicableGameVersion           = null;
            m_InternalResourceVersion         = 0;
            m_UpdateFileCache                 = null;
            m_DecompressCache                 = null;
            m_DecryptResourceCallback         = null;
            m_InitResourcesCompleteCallback   = null;
            m_UpdateVersionListCallbacks      = null;
            m_CheckResourcesCompleteCallback  = null;
            m_UpdateResourcesCompleteCallback = null;

            m_ResourceUpdateStartEventHandler   = null;
            m_ResourceUpdateChangedEventHandler = null;
            m_ResourceUpdateSuccessEventHandler = null;
            m_ResourceUpdateFailureEventHandler = null;
        }
예제 #3
0
        /// <summary>
        /// 使用单机模式并初始化资源
        /// </summary>
        /// <param name="initResourcesCompleteCallback">使用单机模式并初始化资源完成的回调函数</param>
        public void InitResources(InitResourcesCompleteCallback initResourcesCompleteCallback)
        {
            if (initResourcesCompleteCallback == null)
            {
                throw new Exception("Init resources complete callback is invalid.");
            }

            if (m_ResourceMode == ResourceMode.Unspecified)
            {
                throw new Exception("You must set resource mode first.");
            }

            if (m_ResourceMode != ResourceMode.Package)
            {
                throw new Exception("You can not use InitResources without package resource mode.");
            }

            if (m_ResourceIniter == null)
            {
                throw new Exception("You can not use InitResources at this time.");
            }

            InitResourcesCompleteCallback = initResourcesCompleteCallback;
            m_ResourceIniter.InitResources();
        }
예제 #4
0
        private void OnIniterResourceInitComplete()
        {
            m_ResourceIniter.ResourceInitComplete -= OnIniterResourceInitComplete;
            m_ResourceIniter.Shutdown();
            m_ResourceIniter = null;

            m_InitResourcesCompleteCallback();
            m_InitResourcesCompleteCallback = null;
        }
예제 #5
0
 /// <summary>
 /// 使用单机模式并初始化资源。
 /// </summary>
 /// <param name="initResourcesCompleteCallback">使用单机模式并初始化资源完成时的回调函数。</param>
 public void InitResources(InitResourcesCompleteCallback initResourcesCompleteCallback)
 {
     m_ResourceManager.InitResources(initResourcesCompleteCallback);
 }
예제 #6
0
 /// <summary>
 /// 使用单机模式并初始化资源。
 /// </summary>
 /// <param name="initResourcesCompleteCallback">使用单机模式并初始化资源完成的回调函数。</param>
 public void InitResources(InitResourcesCompleteCallback initResourcesCompleteCallback)
 {
     throw new NotSupportedException("InitResources");
 }
예제 #7
0
 public void InitResources(InitResourcesCompleteCallback initResourcesCompleteCallback)
 {
     //throw new NotImplementedException();
 }