コード例 #1
0
    void OnDownloadFailed(FCDownloadManager.FCIndexDownloadInfo indexInfo)
    {
        if (_downloadBundleSet.Count > 0)
        {
            WorldBundlesData wbd = _downloadBundleSet[0];
            foreach (string b in wbd._bundles)
            {
                if (FCDownloadManager.Instance.CheckIndexState(new string[] { b }) == FCDownloadManager.IndexCheckResult.ICR_Downloading)
                {
//					System.DateTime now = System.DateTime.Now;
//					int minutes = (int)((now - _timer).TotalMinutes);
                }
            }
            Debug.LogError("Failed to download " + _downloadBundleSet[0]._worldName);
        }

        if (FCDownloadManager.Instance.HasFatalError())
        {
            if (!_fatalErr)
            {
                _fatalErr = true;
                FCDownloadManager.Instance.RemoveAllDownloads(FCDownloadManager.DownloadType.DT_Background);
            }
        }
        else
        {
            FCDownloadManager.Instance.RestartAllDownloads();
        }
    }
コード例 #2
0
    public void RegisterDownloadEvent(WorldBundlesData bundleSet)
    {
        FCDownloadManager.Instance.OnStartNewDownload    = OnStartNewDownload;
        FCDownloadManager.Instance.OnDownloadSuccess     = OnDownloadSuccess;
        FCDownloadManager.Instance.OnDownloadFailed      = OnDownloadFailed;
        FCDownloadManager.Instance.OnAllDownloadFinished = OnAllDownloadFinished;

        if (!_downloadBundleSet.Contains(bundleSet))
        {
            _downloadBundleSet.Add(bundleSet);
        }
    }
コード例 #3
0
    void OnClickDownload()
    {
        WorldBundlesData wbd = LevelManager.Singleton.BundleConfig.GetBundlesByWorld(_groupName);

        Assertion.Check(wbd != null);
        if (FCDownloadManagerView.Instance.IsWorldBundleInQueue(wbd))
        {
            FCDownloadManagerView.Instance.ShowDownloadProgress(true);
        }
        else
        {
            LevelManager.Singleton.CheckDownloadByGroup(wbd);
        }
    }
コード例 #4
0
    // Switch state by download status.
    void UpdateKingdomState()
    {
        WorldBundlesData wbd = LevelManager.Singleton.BundleConfig.GetBundlesByWorld(_groupName);

        _downloadResult = FCDownloadManager.Instance.CheckIndexState(wbd._bundles);

        if (_downloadResult == FCDownloadManager.IndexCheckResult.ICR_AllFinished)
        {
            //_UI.SetActive(false);
            gameObject.SetActive(false);
            _downloadTips.text = Localization.instance.Get("IDS_BUNDLE_DOWNLOAD_COMPLETE");
            _downloadProgress.gameObject.SetActive(false);

            if (!_levelButtonsUpdated)
            {
                WorldMapController.Instance.UpdateLevelButtonsState();
                _levelButtonsUpdated = true;
            }
        }
        else        // if (FCDownloadManagerView.Instance.IsWorldBundleInQueue(wbd))
        {
            //_UI.SetActive(true);
            _downloadTips.text = Localization.instance.Get("IDS_BUNDLE_DOWNLOADING");
            _downloadProgress.gameObject.SetActive(true);

            float progress = FCDownloadManager.Instance.UpdateDownloadingProgress(wbd._bundles, false);
            _downloadProgress.sliderValue = progress / 100f;
        }

        /*else
         * {
         *      //_UI.SetActive(true);
         *      _downloadTips.text = Localization.instance.Get("IDS_BUNDLE_CLICK_TO_DOWNLOAD");
         *      _downloadProgress.gameObject.SetActive(false);
         * }*/
    }
コード例 #5
0
 public bool IsWorldBundleInQueue(WorldBundlesData world)
 {
     return(_downloadBundleSet.Contains(world));
 }