From 5667c0a5e6b83964e2538a17dcfd6b719692ddda Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期四, 12 二月 2026 11:11:34 +0800
Subject: [PATCH] 编辑器 模拟使用资源问题处理

---
 Main/ResModule/ResManager.cs |   36 +++++++++++++++++++++---------------
 1 files changed, 21 insertions(+), 15 deletions(-)

diff --git a/Main/ResModule/ResManager.cs b/Main/ResModule/ResManager.cs
index bdf5de0..1e721fa 100644
--- a/Main/ResModule/ResManager.cs
+++ b/Main/ResModule/ResManager.cs
@@ -388,29 +388,35 @@
 
     /// <summary>
     /// 寮傛鍔犺浇閰嶇疆鏂囦欢锛圲niTask 鐗堟湰锛夈��
-    /// WebGL 骞冲彴浣跨敤 YooAsset RawFile 寮傛鍔犺浇锛屽叾浠栧钩鍙颁娇鐢ㄧ嚎绋嬫睜銆�
+    /// AB 妯″紡浣跨敤 YooAsset RawFile 寮傛鍔犺浇锛岄潪 AB 妯″紡鐩存帴璇绘枃浠躲��
     /// </summary>
     public async UniTask<string[]> LoadConfigAsync(string name, CancellationToken ct = default)
     {
-#if UNITY_WEBGL && !UNITY_EDITOR
-        // WebGL 涓嶆敮鎸佸绾跨▼鍜� File.ReadAllLines锛屼娇鐢� YooAsset RawFile
-        try
+        // AB 妯″紡锛堝惈 WebGL锛�: 浣跨敤 YooAsset RawFile 鍔犺浇锛堥厤缃枃浠跺湪 YooAsset 娌欑洅涓級
+        if (AssetSource.isUseAssetBundle)
         {
-            var text = await ProjSG.Resource.YooAssetService.Instance.LoadRawFileTextAsync($"config/{name}", ct);
-            if (!string.IsNullOrEmpty(text))
+            try
             {
-                return text.Split(new[] { "\r\n", "\n" }, System.StringSplitOptions.None);
+                var location = $"Assets/ResourcesOut/Config/{name}.txt";
+                var text = await ProjSG.Resource.YooAssetService.Instance.LoadRawFileTextAsync(location, ct);
+                if (!string.IsNullOrEmpty(text))
+                {
+                    return text.Split(new[] { "\r\n", "\n" }, System.StringSplitOptions.None);
+                }
             }
+            catch (System.Exception ex)
+            {
+                UnityEngine.Debug.LogError($"[ResManager] LoadConfigAsync YooAsset failed for '{name}': {ex.Message}");
+            }
+            return System.Array.Empty<string>();
         }
-        catch (System.Exception ex)
-        {
-            UnityEngine.Debug.LogError($"[ResManager] LoadConfigAsync WebGL fallback failed for '{name}': {ex.Message}");
-        }
-        return System.Array.Empty<string>();
+
+        // 闈� AB 妯″紡: 鐩存帴璇绘枃浠讹紙Editor 寮�鍙戞ā寮忥級
+#if UNITY_EDITOR
+        string path = ResourcesPath.CONFIG_FODLER + "/" + name + ".txt";
+        return await UniTask.RunOnThreadPool(() => File.ReadAllLines(path));
 #else
-        #pragma warning disable CS0618 // LoadConfig is obsolete 鈥� used here as thread-pool fallback for non-WebGL
-        return await UniTask.RunOnThreadPool(() => LoadConfig(name));
-        #pragma warning restore CS0618
+        return System.Array.Empty<string>();
 #endif
     }
 

--
Gitblit v1.8.0