From 6f8ed2e37f8762fb3501a671d0dca40bcd68edae Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期日, 21 十月 2018 10:26:29 +0800
Subject: [PATCH] Merge branch 'master' into leonard
---
Assets/Editor/Actor/NpcResourcesBuilder.cs | 243 ++++++++++++++++++++++++++++--------------------
1 files changed, 141 insertions(+), 102 deletions(-)
diff --git a/Assets/Editor/Actor/NpcResourcesBuilder.cs b/Assets/Editor/Actor/NpcResourcesBuilder.cs
index 71a7fd3..2d86f3a 100644
--- a/Assets/Editor/Actor/NpcResourcesBuilder.cs
+++ b/Assets/Editor/Actor/NpcResourcesBuilder.cs
@@ -1,103 +1,142 @@
-锘縰sing UnityEngine;
-using UnityEditor;
-using TableConfig;
-using System.Collections.Generic;
-
-public class NpcResourcesBuilder : ResourcesBuilder
-{
- public void BuildNpc(string modelName)
- {
- if (modelName.Contains("A_Zs"))
- {
- return;
- }
-
- BuildAnimationClip1(modelName);
- BuildAnimatorController(modelName);
-
- var showConfigs = ConfigManager.Instance.GetAllValues<ActorShowConfig>();
- NPCConfig _npcModel = null;
- foreach (var _item in showConfigs)
- {
- for (int i = 0; i < _item.showNpcs.Length; i++)
- {
- _npcModel = ConfigManager.Instance.GetTemplate<NPCConfig>(_item.showNpcs[i]);
- if (_npcModel == null)
- {
- continue;
- }
-
- if (_npcModel.MODE.Equals(modelName))
- {
- BuildBossShowAnimatorController(modelName);
- break;
- }
- }
- }
-
- BuildPrefab(modelName);
- }
-
- public void BuildPrefab(string modelName)
- {
- if (!IsBuildPrefab)
- {
- return;
- }
-
- BuildPrefab(modelName, modelName, InstanceResourcesLoader.raceSuffix);
- }
-
- public void BuildAnimationClip1(string modelName)
- {
- if (!IsBuildAnimationClip)
- {
- return;
- }
-
- BuildAnimationClip(modelName);
- }
-
- public void BuildAnimatorController(string modelName)
- {
- if (!IsBuildAnimatorController)
- {
- return;
- }
-
- if (modelName.Contains("B_Cw"))
- {
- BuildAnimatorController(modelName, "Temple_AnimatorController_Pet", "animatorBuildConfig");
- }
- else
- {
- BuildAnimatorController(modelName, "Temple_AnimatorController_Mob", "animatorBuildConfig");
- }
- }
-
- public void BuildBossShowAnimatorController(string modelName)
- {
- if (!IsBuildAnimatorController)
- {
- return;
- }
-
- BuildAnimatorController(modelName, "Temple_AnimatorController_BossShow", "animatorBuildConfig_BossShow");
- }
-
- protected override void OnSetupRenderer(string resPath, string resName, ref Renderer _renderer)
- {
- string _texturePath = string.Format("Assets/ART/Role/{0}/Materials/{1}.png", resPath, resName);
- string _materialPath = string.Format("Assets/ART/Role/{0}/Materials/{1}.mat", resPath, resName);
-
- // 璁剧疆涓轰笉浜х敓闃村奖骞朵笖涓嶆帴鍙楅槾褰�
- _renderer.receiveShadows = false;
- _renderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off;
-
- // 璁剧疆鏉愯川
- _renderer.sharedMaterial = AssetDatabase.LoadAssetAtPath<Material>(_materialPath);
- _renderer.sharedMaterial.shader = Shader.Find("Character/Normal Monster");
- Texture _texture = AssetDatabase.LoadAssetAtPath<Texture>(_texturePath);
- _renderer.sharedMaterial.SetTexture("_MainTex", _texture);
- }
+锘縰sing UnityEngine;
+using UnityEditor;
+using TableConfig;
+using System.Collections.Generic;
+
+public class NpcResourcesBuilder : ResourcesBuilder
+{
+ public void BuildNpc(string modelName, string outName = null, int type = -1, bool isHighMesh = false)
+ {
+ if (modelName.Contains("A_Zs"))
+ {
+ return;
+ }
+
+ BuildAnimationClip1(modelName);
+ BuildAnimatorController(modelName, outName, type);
+
+ var showConfigs = Config.Instance.GetAllValues<ActorShowConfig>();
+ NPCConfig _npcModel = null;
+ foreach (var _item in showConfigs)
+ {
+ for (int i = 0; i < _item.showNpcs.Length; i++)
+ {
+ if(_item.showNpcs[i] == 0)
+ {
+ continue;
+ }
+ _npcModel = Config.Instance.Get<NPCConfig>(_item.showNpcs[i]);
+ if (_npcModel == null)
+ {
+ continue;
+ }
+
+ if (_npcModel.MODE.Equals(modelName))
+ {
+ BuildBossShowAnimatorController(modelName);
+ break;
+ }
+ }
+ }
+
+ var realmConfigs = Config.Instance.GetAllValues<RealmConfig>();
+ foreach (var _realmConfig in realmConfigs)
+ {
+ _npcModel = Config.Instance.Get<NPCConfig>(_realmConfig.BossID);
+ if (_npcModel == null)
+ {
+ continue;
+ }
+
+ if (_npcModel.MODE.Equals(modelName))
+ {
+ BuildRealmAnimatorController(modelName);
+ break;
+ }
+ }
+
+ BuildPrefab(modelName, outName, isHighMesh);
+ }
+
+ public void BuildPrefab(string modelName, string outName, bool isHighMesh = false)
+ {
+ if (!IsBuildPrefab)
+ {
+ return;
+ }
+
+ BuildPrefab(modelName, modelName, InstanceResourcesLoader.raceSuffix, outName, isHighMesh);
+ }
+
+ public void BuildAnimationClip1(string modelName)
+ {
+ if (!IsBuildAnimationClip)
+ {
+ return;
+ }
+
+ BuildAnimationClip(modelName);
+ }
+
+ public void BuildAnimatorController(string modelName, string outName = null, int type = -1)
+ {
+ if (!IsBuildAnimatorController && !IsBuildAnimatorUIController)
+ {
+ return;
+ }
+
+ if (type <= 0)
+ {
+ BuildAnimatorController(modelName, "Temple_AnimatorController_Mob", "animatorBuildConfig", outName);
+ }
+ else if (type == 1)
+ {
+ BuildAnimatorController(modelName, "Temple_AnimatorController_Pet", "animatorBuildConfig", outName);
+ }
+ else if (type == 2)
+ {
+ BuildAnimatorController(modelName, "Temple_AnimatorController_Horse", "animatorBuildConfig", outName);
+ }
+
+ if(ResourcesBuilder.IsBuildAnimatorUIController)
+ {
+ BuildAnimatorController(modelName, "Temple_AnimatorController_UI", "animatorBuildConfig", outName);
+ }
+ }
+
+ public void BuildBossShowAnimatorController(string modelName)
+ {
+ if (!IsBuildAnimatorController)
+ {
+ return;
+ }
+
+ BuildAnimatorController(modelName, "Temple_AnimatorController_BossShow", "animatorBuildConfig_BossShow");
+ }
+
+ public void BuildRealmAnimatorController(string modelName)
+ {
+ if (!IsBuildAnimatorController)
+ {
+ return;
+ }
+
+ BuildAnimatorController(modelName, "Temple_AnimatorController_Realm", "animatorBuildConfig_Realm");
+ }
+
+ protected override void OnSetupRenderer(string resPath, string resName, ref Renderer _renderer)
+ {
+ string _texturePath = string.Format("Assets/ART/Role/{0}/Materials/{1}.png", resPath, resName);
+ string _materialPath = string.Format("Assets/ART/Role/{0}/Materials/{1}.mat", resPath, resName);
+
+ // 璁剧疆涓轰笉浜х敓闃村奖骞朵笖涓嶆帴鍙楅槾褰�
+ _renderer.receiveShadows = false;
+ _renderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off;
+
+ // 璁剧疆鏉愯川
+ _renderer.sharedMaterial = AssetDatabase.LoadAssetAtPath<Material>(_materialPath);
+ _renderer.sharedMaterial.shader = Shader.Find("Character/Normal Monster");
+ Texture _texture = AssetDatabase.LoadAssetAtPath<Texture>(_texturePath);
+ _renderer.sharedMaterial.SetTexture("_MainTex", _texture);
+ }
}
\ No newline at end of file
--
Gitblit v1.8.0