少年修仙传客户端代码仓库
client_linchunjie
2019-05-22 1db5bf44375dc80e1220a8407a32466cf5ea65db
Core/ResModule/AnimatorControllerLoader.cs
@@ -5,9 +5,9 @@
using UnityEditor;
#endif
[XLua.LuaCallCSharp]
public class AnimatorControllerLoader
{
    public static readonly string controllerSuffix = "AnimatorController_";
    public static readonly string controllerUISuffix = "AnimatorController_UI_";
    public static readonly string controllerShowSuffix = "AnimatorController_Show_";
@@ -51,9 +51,32 @@
        return _animationClip;
    }
    public static RuntimeAnimatorController LoadDefaultMobAnimatorController_Fight()
    {
        return AnimatorControllerLoader.LoadMobController(AnimatorControllerLoader.controllerSuffix,
                                                          GeneralDefine.ModeDefaultConfig[1][1].Replace("Prefab_Race_", ""));
    }
    public static RuntimeAnimatorController LoadDefaultMobAnimatorController_Func()
    {
        return AnimatorControllerLoader.LoadMobController(AnimatorControllerLoader.controllerSuffix,
                                                          GeneralDefine.ModeDefaultConfig[0][1].Replace("Prefab_Race_", ""));
    }
    public static RuntimeAnimatorController LoadDefaultMobAnimatorController_Horse()
    {
        return AnimatorControllerLoader.LoadMobController(AnimatorControllerLoader.controllerSuffix,
                                                          GeneralDefine.ModeDefaultConfig[3][1].Replace("Prefab_Horse_", ""));
    }
    public static RuntimeAnimatorController LoadDefaultMobAnimatorController_Pet()
    {
        return AnimatorControllerLoader.LoadMobController(AnimatorControllerLoader.controllerSuffix,
                                                          GeneralDefine.ModeDefaultConfig[2][1].Replace("Prefab_Race_", ""));
    }
    public static RuntimeAnimatorController Load(string suffix, int id)
    {
        RuntimeAnimatorController _controller = null;
        ModelResConfig _modelRes = ModelResConfig.Get(id);
        string _name = _modelRes.ResourcesName;
        if (_name.IndexOf('/') != -1)
@@ -61,40 +84,7 @@
            _name = _name.Substring(0, _modelRes.ResourcesName.IndexOf('/'));
        }
        if (AssetSource.mobFromEditor)
        {
#if UNITY_EDITOR
            string _resourcesPath = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath,
                                                          "mob/",
                                                          _name,
                                                          "/",
                                                          suffix,
                                                          _name,
                                                          ".controller");
            _controller = AssetDatabase.LoadAssetAtPath<RuntimeAnimatorController>(_resourcesPath);
#endif
        }
        else
        {
            string _bundleName = StringUtility.Contact(ResourcesPath.MOB_FOLDER_NAME,
                                                       ResourcesPath.MOB_SUFFIX,
                                                       _name);
            string _assetName = StringUtility.Contact(suffix, _name);
            AssetInfo _assetInfo = new AssetInfo(_bundleName, _assetName);
            _controller = AssetBundleUtility.Instance.Sync_LoadAsset(_assetInfo) as RuntimeAnimatorController;
        }
        if (_controller == null)
        {
            DebugEx.LogErrorFormat("AnimatorControllerLoader.Load() => 加载不到资源: {0}_{1}.", suffix, _name);
        }
        return _controller;
        return LoadMobController(suffix, _name);
    }
    public static RuntimeAnimatorController LoadMobController(string suffix, string _name)