Explorar el Código

Merge branch 'main' of ssh://192.168.0.8:29418/xianjing into hy_dny

# Conflicts:
#	Assets/Src/Core/Config/ConfigMgr.cs
gdl_123 hace 3 meses
padre
commit
65d24e9cde

+ 6 - 3
Assets/Src/Core/Config/ConfigMgr.cs

@@ -478,9 +478,10 @@ public class ConfigMgr : Singleton<ConfigMgr>
         else
             return null;
     }
-
-
-    
+    public void ClearDLUrlData()
+    {
+        urldatas = null;
+    }
 }
 
 public class I18N
@@ -765,4 +766,6 @@ public class EditorConfigCSV
         }
         return Table;
     }
+
+
 }

+ 23 - 2
Assets/Src/Core/DownLoad/DownloadMgr.cs

@@ -84,7 +84,6 @@ public class DownloadMgr : Singleton<DownloadMgr>
 
     private int tryGetVersionCount;
     public bool isQiangDownload;
-
     public string ResVersion { get; private set; }
     public override void Init()
     {
@@ -926,7 +925,7 @@ public class DownloadMgr : Singleton<DownloadMgr>
             downloadUrl = GetDownloadUrl();
             Log("downloadUrl = " + downloadUrl);
         }
-
+        ConfigMgr.Instance.ClearDLUrlData();
     }
 
 
@@ -967,4 +966,26 @@ public class DownloadMgr : Singleton<DownloadMgr>
 
         return ret;
     }
+
+    public DownLoadUrlCfg GetDLCfgByKey(string key)
+    {
+        if (downLoadUrlCfgs.ContainsKey(key))
+        {
+            return downLoadUrlCfgs[key];
+        }
+        return null;
+    }
+
+    /// <summary>
+    /// BaseUrl   是否开启检查
+    /// ServerUrl url
+    /// Param1 url参数,平台
+    /// DownloadPath 是否隐藏进度条
+    /// </summary>
+    /// <returns></returns>
+    public DownLoadUrlCfg GetCheckSHCfg()
+    {
+        return GetDLCfgByKey("ShenHe");
+    }
+
 }

+ 5 - 0
Assets/Src/Core/DownLoad/FileHelper.cs

@@ -476,6 +476,11 @@ public class FileHelper
         return stringBuilder.ToString();
     }
 
+
+    public static bool CheckStringIsTrue(string str)
+    {
+        return str == "true" || str == "TRUE" || str == "True";
+    }
     //public static string[][] GetCsvDatas(string text)
     //{
     //    using (System.IO.StringReader stringReader = new System.IO.StringReader(text))

+ 58 - 2
Assets/Src/GameLogic/LaunchLoadMgr.cs

@@ -114,9 +114,54 @@ public class LaunchLoadMgr
         }
     }
 
-    private IEnumerator CheckResUpdate()
+    private void CheckISShenHe()
     {
         DownloadMgr.Instance.InitUrlCfg();
+        DownLoadUrlCfg cfg = DownloadMgr.Instance.GetCheckSHCfg();
+        bool isOpenCheck = false;
+        string url = "";
+        string param = "";
+        bool active = true;
+        if (cfg!=null)
+        {
+            isOpenCheck = FileHelper.CheckStringIsTrue(cfg.BaseUrl);
+            url = cfg.ServerUrl;
+            param = cfg.Param1;
+            active = FileHelper.CheckStringIsTrue(cfg.DownloadPath);
+        }
+
+        if (isOpenCheck)
+        {
+            string checkurl = $"{url}serverlist/serverstate?platform={param}";
+            AssetDownloader.Instance.DownLoadFileByCoroutine(checkurl, webreq =>
+             {
+                 bool isShenHe = false;
+                 if (webreq != null)
+                 {
+                     string data = webreq.downloadHandler.text;
+                     isShenHe =  data == "1" || data == "\"1\"";
+                 }
+
+                 if (isShenHe)
+                 {
+                     OnEndDownload();
+                     SetLoadScrollBarActive(active);
+                 }
+                 else
+                 {
+                     GameMgr.Instance.DoTaskByCorutine(CheckResUpdate);
+                 }
+             });
+        }
+        else
+        {
+            GameMgr.Instance.DoTaskByCorutine(CheckResUpdate);
+        }
+
+    }
+
+    private IEnumerator CheckResUpdate()
+    {
         DownloadMgr.Instance.CheckVersion();
         SetLoadDes("CheckRes");
         SetLoadPrecent(0);
@@ -174,6 +219,11 @@ public class LaunchLoadMgr
         }
         yield return new WaitForSeconds(1);
         DownloadMgr.Instance.Free();
+        OnEndDownload();
+    }
+
+    private void OnEndDownload()
+    {
         GameMgr.Instance.CheckVersion();
         GameMgr.Instance.SetSDKName(DownloadMgr.Instance.GetSDKName());
         //m_LoadingRootGo.SetActive(false);
@@ -216,7 +266,8 @@ public class LaunchLoadMgr
     private void OnLoadCfgEnd(CoreEvent<int> ce)
     {
         EventMgr.RemoveEventListener<int>(ECoreEventType.EID_ConfigMgrInit, OnLoadCfgEnd);
-        GameMgr.Instance.DoTaskByCorutine(CheckResUpdate);
+        //GameMgr.Instance.DoTaskByCorutine(CheckResUpdate);
+        CheckISShenHe();
     }
     private void OnConfigMgrInited(CoreEvent<int> ce)
     {
@@ -469,4 +520,9 @@ public class LaunchLoadMgr
             m_LoadScrollBar.size = precent * 0.01f;
     }
 
+
+    private void SetLoadScrollBarActive(bool active)
+    {
+        m_LoadScrollBar.gameObject.SetActive(active);
+    }
 }