yyl
2026-03-04 bc1cb6da854cb2e9144f10ed55330a537ecdca16
Main/Core/ResModule/ScriptableObjectLoader.cs
@@ -1,5 +1,7 @@
using UnityEngine;
using System;
using Cysharp.Threading.Tasks;
using ProjSG.Resource;
#if UNITY_EDITOR
using UnityEditor;
@@ -13,17 +15,20 @@
    public const string SoNewBieGuide_Suffix = "NewBieGuideStep_";
    
    public static NewBieGuideScriptableObject LoadSoNewBieGuideStep(int _id)
        // 已移除同步加载接口,强制业务全部走异步API。
        // public static NewBieGuideScriptableObject LoadSoNewBieGuideStep(int _id) => throw new NotSupportedException("同步加载已禁用,请使用异步接口");
    public static async UniTask<NewBieGuideScriptableObject> LoadSoNewBieGuideStepAsync(int _id)
    {
        NewBieGuideScriptableObject config = null;
        if (!AssetSource.isUseAssetBundle)
        {
#if UNITY_EDITOR
            var resourcePath = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath,
            var resourcePath = StringUtility.Concat(ResourcesPath.ResourcesOutAssetPath,
                                                   "ScriptableObject/NewBieGuide/",
                                                   SoNewBieGuide_Suffix,
                                                   _id,
                                                   _id.ToString(),
                                                   ".asset");
            config = AssetDatabase.LoadAssetAtPath<NewBieGuideScriptableObject>(resourcePath);
@@ -31,14 +36,14 @@
        }
        else
        {
            var assetName = StringUtility.Contact(SoNewBieGuide_Suffix, _id);
            var assetInfo = new AssetInfo(bundleName, assetName);
            config = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo) as NewBieGuideScriptableObject;
            var assetName = StringUtility.Concat(SoNewBieGuide_Suffix, _id.ToString());
            var assetPath = StringUtility.Concat("Assets/ResourcesOut/ScriptableObject/NewBieGuide/", assetName);
            config = await YooAssetService.Instance.LoadAssetAsync<NewBieGuideScriptableObject>(assetPath);
        }
        if (config == null)
        {
            Debug.LogErrorFormat("ScriptableObjectLoader.LoadSoNewBieGuideStep() => 加载不到资源: {0}.", _id);
            Debug.LogErrorFormat("ScriptableObjectLoader.LoadSoNewBieGuideStepAsync() => 加载不到资源: {0}.", _id);
        }
        return config;