Ejemplo n.º 1
0
 private void OnFlatBuffersDataCacheUpdated(string name, System.ArraySegment <byte> buffer)
 {
     ClientDataUtil.OnFlatBuffersEntityUpdated(name, buffer);
     #region 强制回收GC
     System.GC.Collect(System.GC.MaxGeneration, System.GCCollectionMode.Forced);
     System.GC.WaitForPendingFinalizers();
     System.GC.Collect();
     #endregion
 }
Ejemplo n.º 2
0
 private void OnFlatBuffersUpdated(FlatBuffers.ByteBuffer buffer)
 {
     ClientDataUtil.OnFlatBuffersUpdated(buffer);
     #region 强制回收GC
     System.GC.Collect(System.GC.MaxGeneration, System.GCCollectionMode.Forced);
     System.GC.WaitForPendingFinalizers();
     System.GC.Collect();
     #endregion
 }
Ejemplo n.º 3
0
        public override IEnumerator Start()
        {
            GameStateDownload.LogWithTime("LTGameStateLogin.Start=====>");
            if (ILRDefine.IS_FX)
            {
                if (!GameEngine.Instance.TextureDic.ContainsKey(GameEngine.Instance.LoginBGPath))
                {
                    yield return(GameEngine.Instance.SetStreamingAssetsBG(GameEngine.Instance.LoginBGPath));
                }
                if (!GameEngine.Instance.TextureDic.ContainsKey(GameEngine.Instance.BrandPath))
                {
                    yield return(GameEngine.Instance.SetStreamingAssetsBG(GameEngine.Instance.BrandPath));
                }
            }
            else if (Application.identifier.Equals("com.mkhx.xinkuai"))
            {
                if (!GameEngine.Instance.TextureDic.ContainsKey(GameEngine.Instance.BrandPath))
                {
                    yield return(GameEngine.Instance.SetStreamingAssetsBG(GameEngine.Instance.BrandPath));
                }
            }

            // wait network available
            #region wait network available
            while (Application.internetReachability == NetworkReachability.NotReachable)
            {
                yield return(GameEngine.Instance.StartCoroutine(ShowLoadingScreen()));

                yield return(GameEngine.Instance.StartCoroutine(ShowNetworkRetryDialog()));
            }
            #endregion

            // load LoginUI
            yield return(GameEngine.Instance.StartCoroutine(LoadLoginUI()));

            UIStack.Instance.ForceHideLoadingScreen();
            LoadingSpinner.Destroy();

            GameObject obj = GameObject.Find("DownloadHudUI");
            if (obj != null)
            {
                GameObject.Destroy(obj);
            }

            //清除表数据
            ClientDataUtil.OnResetTemplateManager();
            //清datalookup缓存
            DataLookupsCache.Instance.ClearCache();

            GameEngine.Instance.LoginListener.ResolveMHLoginEvent += OnResolveMHLoginEvent;
            GameEngine.Instance.LoginListener.LoginEvent          += OnLogin;
            GameEngine.Instance.LoginListener.LoginFailedEvent    += OnLoginFailed;
            GameEngine.Instance.LoginListener.UpdateEvent         += OnUpdateRequired;

            LoginManager.Instance.LoginExtraListener.ResolveAuthenticatorsEvent         += OnResolveAuthenticators;
            LoginManager.Instance.LoginExtraListener.ResolveMultipleAuthenticatorsEvent += OnResolveMultipleAuthenticators;
            LoginManager.Instance.LoginExtraListener.AuthorizedEvent += OnAuthorized;

            LoginManager.Instance.Api.ErrorHandler += OnApiError;

            //设置音效
            AudioManager.Initialize();
            //预加载主场景摄像机
            GlobalCameraData.LoadCameraData(GlobalCameraData.CAMPAIGN_VIEW_CAMERA);

            yield return(new WaitForSeconds(0.2f));//等待小段时间防止花屏

            Enumerate();

            GameStateDownload.LogWithTime("<=====LTGameStateLogin.Start");
        }