少年修仙传客户端代码仓库
client_Hale
2018-08-22 2b47fde8e7902ddddd898309f281b9c310fc877f
UI/Common/UI3DModelFactory.cs
@@ -66,7 +66,7 @@
    public static GameObject LoadUINPC(int id)
    {
        var config = ConfigManager.Instance.GetTemplate<NPCConfig>(id);
        var config = Config.Instance.Get<NPCConfig>(id);
        var model = GameObjectPoolManager.Instance.RequestNpcGameObject(id);
        if (!model && config.NPCType == (int)E_NpcType.Func)
@@ -96,6 +96,7 @@
        var animator = model.GetComponent<Animator>();
        if (animator != null)
        {
            ResetRealmBossAnimator(id, animator);
            animator.enabled = false;
        }
@@ -107,6 +108,27 @@
        else
        {
            GameObjectPoolManager.Instance.ReleaseDefaultFuncNPC(model);
        }
    }
    private static void ResetRealmBossAnimator(int _id, Animator animator)
    {
        var configs = Config.Instance.GetAllValues<RealmConfig>();
        var index = configs.FindIndex((x) =>
        {
            return x.BossID == _id;
        });
        if (index != -1)
        {
            var npcConfig = Config.Instance.Get<NPCConfig>(_id);
            if (npcConfig != null)
            {
                var runtimeController = AnimatorControllerLoader.LoadMobController(AnimatorControllerLoader.controllerSuffix, npcConfig.MODE);
                if (runtimeController != null)
                {
                    animator.runtimeAnimatorController = runtimeController;
                }
            }
        }
    }
@@ -163,7 +185,7 @@
        if (instance == null)
        {
            var config = ConfigManager.Instance.GetTemplate<TreasureConfig>(_id);
            var config = Config.Instance.Get<TreasureConfig>(_id);
            var prefab = UILoader.LoadPrefab(config.Model);
            instance = GameObject.Instantiate(prefab);
            treasureModels[_id] = instance;