From ad3ac1661daaf4b445914f87009d3d88c990f040 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期二, 28 四月 2026 11:45:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into h5version

---
 Main/System/KnapSack/PackManager.cs |   45 +++++++++++++++++++++++++++------------------
 1 files changed, 27 insertions(+), 18 deletions(-)

diff --git a/Main/System/KnapSack/PackManager.cs b/Main/System/KnapSack/PackManager.cs
index e35cb16..6c21ee8 100644
--- a/Main/System/KnapSack/PackManager.cs
+++ b/Main/System/KnapSack/PackManager.cs
@@ -6,6 +6,7 @@
 using System.Collections;
 using System.IO;
 using Cysharp.Threading.Tasks;
+using UnityEngine.Networking;
 
 public class PackManager : GameSystemManager<PackManager>
 {
@@ -523,7 +524,7 @@
 
     async UniTask ParsePackConfigIni()
     {
-        string[] lines = await LoadConfigIni("MapServerConfig.ini");
+        string[] lines = await LoadConfigIni("MapServerConfig");
         foreach (string line in lines)
         {
             if (line.StartsWith("PackCnt") && line.Contains("="))
@@ -541,26 +542,34 @@
         }
     }
 
-    public async UniTask<string[]> LoadConfigIni(string name)
+    public UniTask<string[]> LoadConfigIni(string name)
     {
-//         string path = string.Empty;
-// #if UNITY_EDITOR
-//         if (!AssetSource.isUseAssetBundle)
-//         {
-//             path = ResourcesPath.CONFIG_FODLER + "/" + name + ".ini";
-//         }
-//         else
-// #endif
-//         {
-//             //浠庢湇鍔$鎷疯礉鏄痠ni锛屾墦鍖呯敤txt缁熶竴澶勭悊
-//             path = AssetVersionUtility.GetAssetFilePath($"Config/{name}.txt");
-//         }
-
-        return await ResManager.Instance.LoadConfigAsync(name, false);
-
-        // return File.ReadAllLines(path);
+        return LoadConfigIniInternal(name);
     }
 
+    private async UniTask<string[]> LoadConfigIniInternal(string name)
+    {
+        string path;
+
+    #if UNITY_EDITOR
+        if (!AssetSource.isUseAssetBundle)
+        {
+            path = $"{ResourcesPath.CONFIG_FODLER}/{name}.ini";
+            return File.ReadAllLines(path);
+        }
+    #endif
+
+        path = AssetVersionUtility.GetAssetFilePath($"Config/{name}.txt");
+
+        using var req = UnityEngine.Networking.UnityWebRequest.Get(path);
+        await req.SendWebRequest();
+
+        if (req.result != UnityEngine.Networking.UnityWebRequest.Result.Success)
+            throw new Exception($"LoadConfigIni failed: {req.error}");
+
+        return req.downloadHandler.text
+            .Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
+    }
     public int GetCanBuyPackGirdCount(PackType type)
     {
         if (!PackMaxCountDict.ContainsKey((int)type))

--
Gitblit v1.8.0