示例#1
0
 private void OnDestroy()
 {
     LauncherConnection.Release();
     RuntimeData.Release();
     StateManager.UnregisterInputDefinition(1);
     StateManager.UnregisterInputDefinition(2);
     StateManager.UnregisterInputDefinition(3);
     StateManager.UnregisterInputDefinition(4);
 }
示例#2
0
 private void DoRequest(TaskCompletionSource <ISpinCredentials> task)
 {
     LauncherConnection.RequestApiToken(delegate(ApiToken token)
     {
         if (token != null)
         {
             Log.Info("Launcher token: " + token.get_Value(), 210, "C:\\BuildAgents\\AgentB\\work\\cub_client_win64_develop\\client\\DofusCube.Unity\\Assets\\Core\\Code\\TEMPFastEnterMatch\\Auth\\ConnectionMethod\\ICredentialProvider.cs");
             task.SetResult(new AnkamaTokenCredentials(token.get_Value()));
         }
         else
         {
             task.SetException(new CredentialException(string.Format("Unable to get token from launcher {0}={1}", "m_serviceId", m_serviceId)));
         }
     }, m_serviceId);
 }
示例#3
0
        private IEnumerator Initialize()
        {
            yield return(LauncherConnection.InitializeConnection());

            if (!ApplicationStarter.InitializeAssetManager())
            {
                Log.Error("InitializeAssetManager: misssing AssetReferenceMap", 100, "C:\\BuildAgents\\AgentB\\work\\cub_client_win64_develop\\client\\DofusCube.Unity\\Assets\\Core\\Code\\Main.cs");
                Quit();
            }
            if (!ApplicationStarter.InitializeRuntimeData())
            {
                Log.Error("InitializeAssetManager: missing LocalizedTextData or BootTextCollection", 107, "C:\\BuildAgents\\AgentB\\work\\cub_client_win64_develop\\client\\DofusCube.Unity\\Assets\\Core\\Code\\Main.cs");
                Quit();
            }
            SplashState splashState = new SplashState();

            StateManager.GetDefaultLayer().SetChildState(splashState, 0);
            yield return(ApplicationStarter.ReadBootConfig());

            if (!BootConfig.initialized)
            {
                yield return(GoToCatastrophicFailureState(InitializationFailure.BootConfigInitialisation));

                yield break;
            }
            if (ApplicationConfig.showServerSelection)
            {
                ApplicationConfig.versionCheckResult = VersionChecker.Result.Success;
            }
            else
            {
                string text = ApplicationConfig.configUrl;
                if (string.IsNullOrEmpty(text))
                {
                    text = BootConfig.remoteConfigUrl;
                }
                Log.Info("configUrl=" + text, 136, "C:\\BuildAgents\\AgentB\\work\\cub_client_win64_develop\\client\\DofusCube.Unity\\Assets\\Core\\Code\\Main.cs");
                yield return(ApplicationStarter.ReadRemoteConfig(text));

                if (!ApplicationConfig.initialized)
                {
                    yield return(GoToInitializationFailedState(InitializationFailure.ApplicationConfigInitialisation));

                    yield break;
                }
            }
            ApplicationConfig.PrintConfig();
            if (ApplicationConfig.versionCheckResult == VersionChecker.Result.None)
            {
                yield return(ApplicationStarter.ReadVersion(ApplicationConfig.versionFileUrl));
            }
            if (!ApplicationConfig.IsVersionValid())
            {
                yield return(GoToInitializationFailedState(InitializationFailure.UnvalidVersion));

                yield break;
            }
            this.StartCoroutine(CheckServerStatus());
            if (ApplicationConfig.haapiAllowed)
            {
                HaapiManager.Initialize();
            }
            string bundlesUrl     = ApplicationConfig.bundlesUrl;
            bool   patchAvailable = ApplicationConfig.versionCheckResult == VersionChecker.Result.PatchAvailable;

            yield return(ApplicationStarter.ConfigureAssetManager(bundlesUrl, patchAvailable));

            if (!AssetManager.get_isReady())
            {
                yield return(GoToInitializationFailedState(InitializationFailure.AssetManagerInitialisation));

                yield break;
            }
            if (patchAvailable)
            {
                yield return(ApplicationStarter.CheckPatch());
            }
            yield return(AudioManager.Load());

            PlayerPreferences.InitializeAudioPreference();
            yield return(RuntimeData.Load());

            if (!RuntimeData.isReady)
            {
                yield return(GoToInitializationFailedState(InitializationFailure.RuntimeDataInitialisation));

                yield break;
            }
            ConnectionHandler.Initialize();
            while (!m_serverStatusChecked)
            {
                yield return(null);
            }
            StatesUtility.GotoLoginState();
        }