From 976f9266cfae78a36c812b5c3aba4dc664e607f7 Mon Sep 17 00:00:00 2001
From: client_Hale <339726288@qq.com>
Date: 星期三, 05 九月 2018 20:42:48 +0800
Subject: [PATCH] 3270 【开发】主干:模型生成工具

---
 Assets/Editor/Actor/ActorEditor.cs |   70 ++++++++++++++++++++++-------------
 1 files changed, 44 insertions(+), 26 deletions(-)

diff --git a/Assets/Editor/Actor/ActorEditor.cs b/Assets/Editor/Actor/ActorEditor.cs
index 79e4e63..04b6149 100644
--- a/Assets/Editor/Actor/ActorEditor.cs
+++ b/Assets/Editor/Actor/ActorEditor.cs
@@ -15,6 +15,15 @@
         _window.Show();
     }
 
+    private enum BuildNpcType
+    {
+        Npc,
+        Pet,
+        Horse
+    }
+
+    private BuildNpcType m_NpcType;
+
     private bool m_GenerateNoExist = false;
     private bool m_GenerateAnimationClip = false;
     private bool m_GenerateController = false;
@@ -23,6 +32,9 @@
     private int m_ModelResID;
     private int m_NpcID;
     private string m_ModelName;
+    private string m_BuildName;
+
+    public bool m_HighMesh;
 
     private NpcResourcesBuilder m_NpcResBuilder;
     private ModelResourcesBuilder m_ModelResBuilder;
@@ -40,8 +52,14 @@
 
         EditorGUILayout.LabelField("# 鐢熸垚Npc瑙掕壊璧勬簮 #");
 
-        m_ModelName = EditorGUILayout.TextField("妯″瀷鍚嶇О", m_ModelName);
-
+        EditorGUILayout.BeginVertical();
+        m_ModelName = EditorGUILayout.TextField("鏉ユ簮鍚�", m_ModelName);
+        m_BuildName = EditorGUILayout.TextField("鐢熸垚鍚�", m_BuildName);
+        EditorGUILayout.BeginHorizontal();
+        m_NpcType = (BuildNpcType)EditorGUILayout.EnumPopup("绫诲瀷:", m_NpcType);
+        m_HighMesh = EditorGUILayout.ToggleLeft("楂樻ā", m_HighMesh);
+        EditorGUILayout.EndHorizontal();
+        EditorGUILayout.EndVertical();
         EditorGUILayout.BeginHorizontal();
         m_GenerateNoExist = GUILayout.Toggle(m_GenerateNoExist, "鍙敓鎴愪笉瀛樺湪鐨�");
         m_GeneratePrefab = GUILayout.Toggle(m_GeneratePrefab, "Prefab");
@@ -55,26 +73,26 @@
 
         if (GUILayout.Button("鍗曠嫭鐢熸垚", GUILayout.Height(24)))
         {
-            m_NpcResBuilder.BuildNpc(m_ModelName);
+            m_NpcResBuilder.BuildNpc(m_ModelName, m_BuildName, (int)m_NpcType, m_HighMesh);
         }
 
-        if (GUILayout.Button("鐢熸垚鎵�鏈�", GUILayout.Height(24)))
-        {
-            bool _result = EditorUtility.DisplayDialog("娓╅Θ鎻愰啋", "鐢熸垚鎵�鏈夋崲瑁呰祫婧愬皢浼氳�楄垂姣旇緝闀跨殑鏃堕棿, 璇疯寰楀嚑鐐�, 鏄惁鏄渶瑕佺敓鎴愭墍鏈夌殑璧勬簮, 濡傛灉涓嶆槸, 璁板緱鍙互鍘绘帀涓嶇敓鎴愮殑璧勬簮,鏄笉鏄笉闇�瑕佺敓鎴愬凡缁忓瓨鍦ㄧ殑璧勬簮, 濡傛灉涓嶉渶瑕�, 璁板緱鍕鹃�塠鍙敓鎴愪笉瀛樺湪鐨刔", "纭鐢熸垚", "鎴戞寜閿欎簡");
-            if (_result)
-            {
-                var _dict = Config.Instance.GetAllValues<NPCConfig>();
-                foreach (var _model in _dict)
-                {
-                    if (string.IsNullOrEmpty(_model.MODE))
-                    {
-                        continue;
-                    }
+        // if (GUILayout.Button("鐢熸垚鎵�鏈�", GUILayout.Height(24)))
+        // {
+        //     bool _result = EditorUtility.DisplayDialog("娓╅Θ鎻愰啋", "鐢熸垚鎵�鏈夋崲瑁呰祫婧愬皢浼氳�楄垂姣旇緝闀跨殑鏃堕棿, 璇疯寰楀嚑鐐�, 鏄惁鏄渶瑕佺敓鎴愭墍鏈夌殑璧勬簮, 濡傛灉涓嶆槸, 璁板緱鍙互鍘绘帀涓嶇敓鎴愮殑璧勬簮,鏄笉鏄笉闇�瑕佺敓鎴愬凡缁忓瓨鍦ㄧ殑璧勬簮, 濡傛灉涓嶉渶瑕�, 璁板緱鍕鹃�塠鍙敓鎴愪笉瀛樺湪鐨刔", "纭鐢熸垚", "鎴戞寜閿欎簡");
+        //     if (_result)
+        //     {
+        //         var _dict = Config.Instance.GetAllValues<NPCConfig>();
+        //         foreach (var _model in _dict)
+        //         {
+        //             if (string.IsNullOrEmpty(_model.MODE))
+        //             {
+        //                 continue;
+        //             }
 
-                    m_NpcResBuilder.BuildNpc(_model.MODE);
-                }
-            }
-        }
+        //             m_NpcResBuilder.BuildNpc(_model.MODE);
+        //         }
+        //     }
+        // }
 
         GUILayout.Space(10);
 
@@ -84,7 +102,7 @@
 
         if (GUILayout.Button("鍗曠嫭鐢熸垚", GUILayout.Height(24)))
         {
-            m_ModelResBuilder.BuildModelRes(m_ModelResID);
+            m_ModelResBuilder.BuildModelRes(m_ModelResID, m_HighMesh);
         }
 
         if (GUILayout.Button("鎵�鏈夌繀鑶�", GUILayout.Height(24)))
@@ -95,7 +113,7 @@
             {
                 if (_item.Type == (int)E_ModelResType.Wing)
                 {
-                    m_ModelResBuilder.BuildWing(_item.ID);
+                    m_ModelResBuilder.BuildWing(_item.ID, m_HighMesh);
                 }
             }
         }
@@ -108,7 +126,7 @@
             {
                 if (_item.Type == (int)E_ModelResType.Weapon)
                 {
-                    m_ModelResBuilder.BuildWeapon(_item.ID);
+                    m_ModelResBuilder.BuildWeapon(_item.ID, m_HighMesh);
                 }
             }
         }
@@ -121,7 +139,7 @@
             {
                 if (_item.Type == (int)E_ModelResType.Secondary)
                 {
-                    m_ModelResBuilder.BuildSecondary(_item.ID);
+                    m_ModelResBuilder.BuildSecondary(_item.ID, m_HighMesh);
                 }
             }
         }
@@ -134,7 +152,7 @@
             {
                 if (_item.Type == (int)E_ModelResType.Suit)
                 {
-                    m_ModelResBuilder.BuildClothes(_item.ID);
+                    m_ModelResBuilder.BuildClothes(_item.ID, m_HighMesh);
                 }
             }
         }
@@ -147,7 +165,7 @@
             {
                 if (_item.Type == (int)E_ModelResType.Horse)
                 {
-                    m_ModelResBuilder.BuildHorse(_item.ID);
+                    m_ModelResBuilder.BuildHorse(_item.ID, m_HighMesh);
                 }
             }
         }
@@ -160,7 +178,7 @@
                 var _dict = Config.Instance.GetAllValues<ModelResConfig>();
                 foreach (var _item in _dict)
                 {
-                    m_ModelResBuilder.BuildModelRes(_item.ID);
+                    m_ModelResBuilder.BuildModelRes(_item.ID, m_HighMesh);
                 }
             }
         }

--
Gitblit v1.8.0