hexiaojie il y a 8 mois
Parent
commit
f1e3ab0cd3
100 fichiers modifiés avec 878 ajouts et 3628 suppressions
  1. 23 16
      GameClient/Assets/Editor/BuildEditor/PresetAssetHelper.cs
  2. 0 548
      GameClient/Assets/Editor/Excel/CodeBuilder.cs
  3. 0 100
      GameClient/Assets/Editor/Excel/CodeTemplateFactory.cs
  4. 0 8
      GameClient/Assets/Editor/Excel/DLL.meta
  5. BIN
      GameClient/Assets/Editor/Excel/DLL/EPPlusFree.dll
  6. 0 33
      GameClient/Assets/Editor/Excel/DLL/EPPlusFree.dll.meta
  7. 0 308
      GameClient/Assets/Editor/Excel/ExcelChecker.cs
  8. 0 48
      GameClient/Assets/Editor/Excel/ExcelConfig.cs
  9. 0 317
      GameClient/Assets/Editor/Excel/ExcelReader.cs
  10. 0 11
      GameClient/Assets/Editor/Excel/ExcelReader.cs.meta
  11. 0 22
      GameClient/Assets/Editor/Excel/ExcelScanner.cs
  12. 0 11
      GameClient/Assets/Editor/Excel/ExcelScanner.cs.meta
  13. 0 8
      GameClient/Assets/Editor/Excel/Scanner.meta
  14. 0 66
      GameClient/Assets/Editor/Excel/Scanner/CardScanner.cs
  15. 0 11
      GameClient/Assets/Editor/Excel/Scanner/CardScanner.cs.meta
  16. 0 55
      GameClient/Assets/Editor/Excel/Scanner/FieldScanner.cs
  17. 0 11
      GameClient/Assets/Editor/Excel/Scanner/FieldScanner.cs.meta
  18. 0 55
      GameClient/Assets/Editor/Excel/Scanner/GiftBagScanner.cs
  19. 0 11
      GameClient/Assets/Editor/Excel/Scanner/GiftBagScanner.cs.meta
  20. 0 99
      GameClient/Assets/Editor/Excel/Scanner/InstanceZonesScanner.cs
  21. 0 11
      GameClient/Assets/Editor/Excel/Scanner/InstanceZonesScanner.cs.meta
  22. 0 910
      GameClient/Assets/Editor/Excel/Scanner/ItemApproachScanner.cs
  23. 0 11
      GameClient/Assets/Editor/Excel/Scanner/ItemApproachScanner.cs.meta
  24. 0 69
      GameClient/Assets/Editor/Excel/Scanner/LeagueScanner.cs
  25. 0 11
      GameClient/Assets/Editor/Excel/Scanner/LeagueScanner.cs.meta
  26. 0 313
      GameClient/Assets/Editor/Excel/Scanner/ShopScanner.cs
  27. 0 11
      GameClient/Assets/Editor/Excel/Scanner/ShopScanner.cs.meta
  28. 0 45
      GameClient/Assets/Editor/Excel/Scanner/SuitGuideScanner.cs
  29. 0 11
      GameClient/Assets/Editor/Excel/Scanner/SuitGuideScanner.cs.meta
  30. 0 8
      GameClient/Assets/Editor/Excel/Template.meta
  31. 0 23
      GameClient/Assets/Editor/Excel/Template/Config.txt
  32. 0 25
      GameClient/Assets/Editor/Excel/Template/ConfigArray.txt
  33. 0 7
      GameClient/Assets/Editor/Excel/Template/ConfigArray.txt.meta
  34. 0 4
      GameClient/Assets/Editor/Excel/Template/Dispose.txt
  35. 0 7
      GameClient/Assets/Editor/Excel/Template/Dispose.txt.meta
  36. 0 7
      GameClient/Assets/Editor/Excel/Template/DisposeAllCfgsCache.txt
  37. 0 7
      GameClient/Assets/Editor/Excel/Template/DisposeAllCfgsCache.txt.meta
  38. 0 21
      GameClient/Assets/Editor/Excel/Template/FunctionAll.txt
  39. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionAll.txt.meta
  40. 0 17
      GameClient/Assets/Editor/Excel/Template/FunctionAllGroupBlock.txt
  41. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionAllGroupBlock.txt.meta
  42. 0 11
      GameClient/Assets/Editor/Excel/Template/FunctionAllKeyBlock.txt
  43. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionAllKeyBlock.txt.meta
  44. 0 2
      GameClient/Assets/Editor/Excel/Template/FunctionAllSingleBlock.txt
  45. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionAllSingleBlock.txt.meta
  46. 0 4
      GameClient/Assets/Editor/Excel/Template/FunctionDispose.txt
  47. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionDispose.txt.meta
  48. 0 9
      GameClient/Assets/Editor/Excel/Template/FunctionGroup.txt
  49. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionGroup.txt.meta
  50. 0 4
      GameClient/Assets/Editor/Excel/Template/FunctionInit.txt
  51. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionInit.txt.meta
  52. 0 10
      GameClient/Assets/Editor/Excel/Template/FunctionSingle.txt
  53. 0 7
      GameClient/Assets/Editor/Excel/Template/FunctionSingle.txt.meta
  54. 0 4
      GameClient/Assets/Editor/Excel/Template/Init.txt
  55. 0 7
      GameClient/Assets/Editor/Excel/Template/Init.txt.meta
  56. 0 7
      GameClient/Assets/Editor/Excel/Template/InitAllCfgsCache.txt
  57. 0 7
      GameClient/Assets/Editor/Excel/Template/InitAllCfgsCache.txt.meta
  58. 0 1
      GameClient/Assets/Editor/Excel/Template/StrCfgArrayDisposeBlock.txt
  59. 0 7
      GameClient/Assets/Editor/Excel/Template/StrCfgArrayDisposeBlock.txt.meta
  60. 0 1
      GameClient/Assets/Editor/Excel/Template/StrCfgArrayInitBlock.txt
  61. 0 7
      GameClient/Assets/Editor/Excel/Template/StrCfgArrayInitBlock.txt.meta
  62. 23 14
      GameClient/Assets/Game/HotUpdate/Assets/PreDownloadManager.cs
  63. 9 7
      GameClient/Assets/Game/HotUpdate/Controller/BonusController.cs
  64. 2 2
      GameClient/Assets/Game/HotUpdate/Controller/ErrorCodeController.cs
  65. 1 3
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  66. 34 33
      GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs
  67. 4 2
      GameClient/Assets/Game/HotUpdate/Controller/LoginController.cs
  68. 15 14
      GameClient/Assets/Game/HotUpdate/Controller/MainController.cs
  69. 2 2
      GameClient/Assets/Game/HotUpdate/Data/BattlePassTaskDataManager.cs
  70. 1 1
      GameClient/Assets/Game/HotUpdate/Data/Cache/StoryBonusDataCache.cs
  71. 2 1
      GameClient/Assets/Game/HotUpdate/Data/DecomposeDataManager.cs
  72. 1 1
      GameClient/Assets/Game/HotUpdate/Data/ItemDataManager.cs
  73. 1 1
      GameClient/Assets/Game/HotUpdate/Data/TaskDataManager.cs
  74. 1 1
      GameClient/Assets/Game/HotUpdate/Data/VO/ItemData.cs
  75. 62 86
      GameClient/Assets/Game/HotUpdate/FairyGUI/GFGUIPackage.cs
  76. 4 4
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityThemeLuckyBox/UI_ActivityThemeLuckyBoxUI.cs
  77. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment.meta
  78. 101 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_BagEquipmentUI.cs
  79. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_BagEquipmentUI.cs.meta
  80. 13 13
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button1.cs
  81. 1 1
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button1.cs.meta
  82. 13 13
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button2.cs
  83. 1 1
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button2.cs.meta
  84. 13 13
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button3.cs
  85. 1 1
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button3.cs.meta
  86. 13 13
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button6.cs
  87. 1 1
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button6.cs.meta
  88. 74 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComIcon.cs
  89. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComIcon.cs.meta
  90. 89 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComPhotoPostcard.cs
  91. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComPhotoPostcard.cs.meta
  92. 74 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComTravel.cs
  93. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComTravel.cs.meta
  94. 145 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_EquipmentExchangeUI.cs
  95. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_EquipmentExchangeUI.cs.meta
  96. 89 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ListPhotoItem.cs
  97. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ListPhotoItem.cs.meta
  98. 0 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BlindBox/UI_BlindBoxUI.cs
  99. 3 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BlindBox/UI_Button1.cs
  100. 1 1
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Common/UI_ComHolder.cs

+ 23 - 16
GameClient/Assets/Editor/BuildEditor/PresetAssetHelper.cs

@@ -4,24 +4,25 @@ using YooAsset;
 using GFGGame;
 using UnityEditor;
 using System.IO;
+using cfg.GfgCfg;
 using UnityEngine;
 
 namespace GFGEditor
 {
     public class PresetAssetHelper
     {
-
         public static void CopyPresetAssets()
         {
             // 等待资源构建流程完成
             //......
 
             //选择清单文件
-            string selectedFile =  EditorUtility.OpenFilePanel("Select a file", "", "");
-            if(string.IsNullOrEmpty(selectedFile))
+            string selectedFile = EditorUtility.OpenFilePanel("Select a file", "", "");
+            if (string.IsNullOrEmpty(selectedFile))
             {
                 return;
             }
+
             int t = selectedFile.LastIndexOf("/");
             string dirPath = selectedFile.Substring(0, t);
 
@@ -33,17 +34,17 @@ namespace GFGEditor
 
 
             SqliteController.Instance.Init(false, null);
-            StoryDialogCfg[] dataArray = StoryDialogCfgArray.Instance.dataArray;
+
+            List<StoryDialogCfg> dataArray = CommonDataManager.Tables.TblStoryDialogCfg.DataList;
             foreach (var cfg in dataArray)
             {
-                if (!string.IsNullOrEmpty(cfg.bgRes))
+                if (!string.IsNullOrEmpty(cfg.BgRes))
                 {
-                    var resPath = ResPathUtil.GetSceneBgPath(cfg.bgRes);
+                    var resPath = ResPathUtil.GetSceneBgPath(cfg.BgRes);
                     preloadFiles.Add(resPath);
                 }
             }
 
-
             // 加载构建成功的资源清单对象
             byte[] manifestBytes = FileUtility.ReadAllBytes(selectedFile);
             PackageManifest manifest = ManifestTools.DeserializeFromBinary(manifestBytes);
@@ -54,13 +55,16 @@ namespace GFGEditor
             {
                 TryAdd(assetPath, manifest, bundles);
             }
-            List<ItemCfg> dressUpItemlist = ItemCfgArray.Instance.GetCfgsByitemType(ConstItemType.DRESS_UP);
-            foreach(var dressUpCfg in dressUpItemlist)
+
+            List<ItemCfg> dressUpItemlist =
+                CommonDataManager.Tables.TblItemCfg.GetGroup1ByItemType(ConstItemType.DRESS_UP);
+
+            foreach (var dressUpCfg in dressUpItemlist)
             {
-                if(dressUpCfg.loadType > 0)
+                if (dressUpCfg.LoadType > 0)
                 {
                     string assetPath = ResPathUtil.GetDressUpLayerSpriteResPath(dressUpCfg, 1);
-                    TryAdd(assetPath, manifest, bundles); 
+                    TryAdd(assetPath, manifest, bundles);
                     assetPath = ResPathUtil.GetDressUpLayerSpriteResPath(dressUpCfg, 2);
                     TryAdd(assetPath, manifest, bundles);
                     assetPath = ResPathUtil.GetDressUpLayerSpriteResPath(dressUpCfg, 3);
@@ -86,7 +90,9 @@ namespace GFGEditor
                     TryAdd(assetPath, manifest, bundles);
                 }
             }
-            string root = $"{AssetBundleBuilderHelper.GetDefaultStreamingAssetsRoot()}/{VersionController.DefaultPackage}";
+
+            string root =
+                $"{AssetBundleBuilderHelper.GetDefaultStreamingAssetsRoot()}/{VersionController.DefaultPackage}";
             //清空
             EditorTools.ClearFolder(root);
 
@@ -98,10 +104,11 @@ namespace GFGEditor
                 string sourcePath = $"{dirPath}/{packageBundle.FileName}";
                 EditorTools.CopyFile(sourcePath, destPath, true);
                 //Debug.Log($"sourcePath { sourcePath}");
-                Debug.Log($"destPath { destPath}");
+                Debug.Log($"destPath {destPath}");
             }
+
             //拷贝指定标签的文件
-            string[] tags = { "preload"};
+            string[] tags = { "preload" };
             foreach (var packageBundle in manifest.BundleList)
             {
                 if (packageBundle.HasTag(tags) == false)
@@ -109,7 +116,7 @@ namespace GFGEditor
                 string sourcePath = $"{dirPath}/{packageBundle.FileName}";
                 string destPath = $"{root}/{packageBundle.FileName}";
                 EditorTools.CopyFile(sourcePath, destPath, true);
-                Debug.Log($"destPath { destPath}");
+                Debug.Log($"destPath {destPath}");
             }
         }
 
@@ -126,4 +133,4 @@ namespace GFGEditor
             }
         }
     }
-}
+}

+ 0 - 548
GameClient/Assets/Editor/Excel/CodeBuilder.cs

@@ -1,548 +0,0 @@
-using System.Collections.Generic;
-using System.IO;
-using System.Text;
-using UnityEngine;
-using GFGGame;
-using OfficeOpenXml;
-
-namespace GFGEditor
-{
-    public class CodeBuilder
-    {
-        private const string SQL_PREFIX = "_";
-        private static StringBuilder _declarationBuilder = new StringBuilder();
-        private static StringBuilder _assignmentBuilder = new StringBuilder();
-        private static StringBuilder _parseBuilder = new StringBuilder();
-        //private static bool _hasSameIds;
-
-        private static List<string> _names = new List<string>();
-        private static List<string> _types = new List<string>();
-        private static List<string> _allNames = new List<string>();
-        private static List<string> _allTypes = new List<string>();
-        private static List<int> _indexs = new List<int>();
-        private static List<int> _allIndexs = new List<int>();
-        private static Dictionary<string, string> _idDic = new Dictionary<string, string>();
-        private static Dictionary<string, string> _itemTypeDicByName = new Dictionary<string, string>();
-
-        public static void GenerateCode(ExcelWorksheet worksheet, string configName, string configArrayName)
-        {
-            ET.Log.Debug($"configName {configName}");
-            _declarationBuilder.Clear();
-            _assignmentBuilder.Clear();
-            _parseBuilder.Clear();
-            _names.Clear();
-            _allNames.Clear();
-            _types.Clear();
-            _allTypes.Clear();
-            _indexs.Clear();
-            _allIndexs.Clear();
-            _idDic.Clear();
-            //_hasSameIds = false;
-            List<string> keyName = new List<string>();//默认用id查询单条数据
-            List<string> keyType = new List<string>();
-            Dictionary<string, List<string>> keyNames = new Dictionary<string, List<string>>();
-            Dictionary<string, List<string>> keyTypes = new Dictionary<string, List<string>>();
-            Dictionary<string, List<string>> groupNames = new Dictionary<string, List<string>>();
-            Dictionary<string, List<string>> groupTypes = new Dictionary<string, List<string>>();
-            bool groupOnly = false;//可根据id分组时,不提供根据id查询单条数据的接口
-            int len = worksheet.Dimension.End.Column;
-            if (len <= 0)
-            {
-                return;
-            }
-            worksheet = HandleExcelWorksheet(worksheet);
-            for (int i = 1; i <= len; ++i)
-            {
-                ET.Log.Debug($"GenerateCode for i {i}");
-                string annotation = worksheet.Cells[1, i].Text.Trim();
-                string typeWhole = worksheet.Cells[2, i].Text.Trim();
-                string type = typeWhole.Split('#')[0];
-                string nameWhole = worksheet.Cells[3, i].Text.Trim();
-                string[] nameInfos = nameWhole.Split('#', '&');//#和&不会同时存在,即不会将数组用作数据查询的关键字key
-                string name = nameInfos[0];
-                if (i == 1)
-                {
-                    keyName.Add(name);
-                    keyType.Add(type);
-                }
-                for (int j = 1; j < nameInfos.Length; j++)
-                {
-                    if (nameInfos[j].Contains("k"))
-                    {
-                        if (!keyNames.ContainsKey(nameInfos[j]))
-                        {
-                            keyNames.Add(nameInfos[j], new List<string>());
-                            keyTypes.Add(nameInfos[j], new List<string>());
-                        }
-                        keyNames[nameInfos[j]].Add(name);
-                        keyTypes[nameInfos[j]].Add(type);
-                    }
-                    if (nameInfos[j].Contains("g"))
-                    {
-                        if (!groupNames.ContainsKey(nameInfos[j]))
-                        {
-                            groupNames.Add(nameInfos[j], new List<string>());
-                            groupTypes.Add(nameInfos[j], new List<string>());
-                        }
-                        groupNames[nameInfos[j]].Add(name);
-                        groupTypes[nameInfos[j]].Add(type);
-                    }
-                }
-                foreach (string key in groupNames.Keys)
-                {
-                    if (groupNames[key].Count == 1 && groupNames[key][0] == keyName[0])
-                    {
-                        groupOnly = true;
-                    }
-                }
-                ParseDataColumn(annotation, type, name, nameWhole, typeWhole, i);
-            }
-
-            Debug.Log("configArrayName:" + configArrayName + "   _names:" + _names + "   _types:" + _types);
-            //创建sqlite表
-            SQLiteHelper.Instance.CreateTable(configArrayName, _names.ToArray(), _types.ToArray());
-            AddDataToSql(worksheet, configName, configArrayName);
-
-            //生成管理类代码
-            string configArrayStr = CodeTemplateFactory.ConfigArrayTemplate;
-
-            _declarationBuilder.AppendFormat("\t\t//{0}", "key");
-            _declarationBuilder.AppendLine();
-            _declarationBuilder.AppendFormat("\t\tpublic {0} {1};", "string", "key");
-            _declarationBuilder.AppendLine();
-
-            // _assignmentBuilder.AppendFormat("\t\t\t{0} = \"{1}\";", "key", keyName);
-            // _assignmentBuilder.AppendLine();
-
-            foreach (string key in keyNames.Keys)
-            {
-                _declarationBuilder.AppendFormat("\t\t//{0}{1}", "key_", key);
-                _declarationBuilder.AppendLine();
-                _declarationBuilder.AppendFormat("\t\tpublic {0} {1}{2};", "string", "combinedKey_", key);
-                _declarationBuilder.AppendLine();
-
-            }
-
-            foreach (string key in groupNames.Keys)
-            {
-                _declarationBuilder.AppendFormat("\t\t//{0}{1}", "groupKey_", key);
-                _declarationBuilder.AppendLine();
-                _declarationBuilder.AppendFormat("\t\tpublic {0} {1}{2};", "string", "groupKey_", key);
-                _declarationBuilder.AppendLine();
-            }
-
-            string strDispose = "_allDatas = null;\n";
-
-
-
-            string singleFunction = "";
-            //处理查询单条数据函数
-            if (!groupOnly)
-            {
-                singleFunction = HandleSingleFunction("key", keyName, keyType, "GetCfg", "_cfgsDic", configArrayStr, configArrayName);
-                strDispose = string.Format("{0}\t\t\t{1}\n", strDispose, "_cfgsDic.Clear();");
-            }
-            foreach (string key in keyNames.Keys)
-            {
-                string functionName = string.Format("GetCfgBy{0}", string.Join("And", keyNames[key]));
-                string cfgsDicName = string.Format("_cfgsDicBy{0}", string.Join("And", keyNames[key]));
-
-                singleFunction = singleFunction + HandleSingleFunction("combinedKey_" + key, keyNames[key], keyTypes[key], functionName, cfgsDicName, configArrayStr, configArrayName);
-                strDispose = string.Format("{0}\t\t\t{1}.Clear();\n", strDispose, cfgsDicName);
-            }
-            configArrayStr = configArrayStr.Replace("{singleFunction}", singleFunction);
-
-            string groupFunction = "";
-
-            //处理查询多条数据函数
-            if (groupNames.Count > 0)
-            {
-                int index0 = 0;
-                foreach (string key in groupNames.Keys)
-                {
-                    string functionName = string.Format("GetCfgsBy{0}", string.Join("And", groupNames[key]));
-                    string cfgsGroupDicName = string.Format("_cfgsGroupDic{0}", index0);
-                    groupFunction = groupFunction + HandleGroupFunction("groupKey_" + key, groupNames[key], groupTypes[key], functionName, cfgsGroupDicName, configArrayStr, configArrayName);
-                    strDispose = string.Format("{0}\n\t\t\t{1}.Clear();", strDispose, cfgsGroupDicName);
-                    index0++;
-                }
-            }
-            configArrayStr = configArrayStr.Replace("{groupFunction}", groupFunction);
-
-
-            //处理全部数据函数
-            string FunctionAllStr = CodeTemplateFactory.FunctionAllTemplate;
-            configArrayStr = configArrayStr.Replace("{allFunction}", FunctionAllStr);
-            configArrayStr = configArrayStr.Replace("{Init}", CodeTemplateFactory.InitTemplate);
-            configArrayStr = configArrayStr.Replace("{Dispose}", CodeTemplateFactory.DisposeTemplate);
-            configArrayStr = configArrayStr.Replace("{StrDispose}", strDispose);
-
-            configArrayStr = configArrayStr.Replace("{editorConditionStart}", "");
-            configArrayStr = configArrayStr.Replace("{editorConditionEnd}", "");
-
-
-
-            List<string> singleStrArry = new List<string>();
-            if (!groupOnly)
-            {
-                string singleStr = CodeTemplateFactory.FunctionAllSingleBlockTemplate;
-                singleStr = singleStr.Replace("{cfgsDicName}", "_cfgsDic");
-                singleStr = singleStr.Replace("{combinedKey}", "cfg.key");
-                singleStrArry.Add(singleStr);
-            }
-            foreach (string key in keyNames.Keys)
-            {
-                string cfgsDicName = string.Format("_cfgsDicBy{0}", string.Join("And", keyNames[key]));
-                string singleStr = CodeTemplateFactory.FunctionAllKeyBlockTemplate;
-                singleStr = singleStr.Replace("{cfgsDicName}", cfgsDicName);
-                singleStr = singleStr.Replace("{combinedKey}", "cfg.combinedKey_" + key);
-                singleStrArry.Add(singleStr);
-            }
-            string singleStrs = string.Join("\n", singleStrArry);
-
-            if(string.IsNullOrEmpty(singleStrs))
-            {
-                configArrayStr = configArrayStr.Replace("{SingleHandleBlock}", "");
-            }
-            else
-            {
-                //添加
-                configArrayStr = configArrayStr.Replace("{SingleHandleBlock}", singleStrs);
-            }
-
-            List<string> groupStrArry = new List<string>();
-            int index1 = 0;
-            foreach (string key in groupNames.Keys)
-            {
-                string cfgsDicName = string.Format("_cfgsGroupDic{0}", index1);
-                string singleStr = CodeTemplateFactory.FunctionAllGroupBlockTemplate;
-                singleStr = singleStr.Replace("{cfgsGroupDicName}", cfgsDicName);
-                singleStr = singleStr.Replace("{groupKey}", "cfg.groupKey_" + key);
-                singleStr = singleStr.Replace("{list}", "list" + index1);
-                groupStrArry.Add(singleStr);
-                index1++;
-            }
-            string groupStrs = string.Join("\n", groupStrArry);
-
-            configArrayStr = configArrayStr.Replace("{FunctionAllBlock}", groupStrs);
-
-            // foreach()
-            //名称处理
-            configArrayStr = configArrayStr.Replace("{CfgName}", configName);
-            configArrayStr = configArrayStr.Replace("{CfgArrayName}", configArrayName);
-            //生成反序列化代码
-            string configStr = CodeTemplateFactory.ConfigTemplate.Replace("{CfgName}", configName);
-            configStr = configStr.Replace("{variable declaration}", _declarationBuilder.ToString());
-            configStr = configStr.Replace("{variable assignment}", _assignmentBuilder.ToString());
-            configStr = configStr.Replace("{variable parse}", _parseBuilder.ToString());
-            //创建配置项类代码
-            using (StreamWriter sw = new StreamWriter(ExcelConfig.configCodePath + configName + ".cs"))
-            {
-                sw.Write(configStr);
-            }
-            //创建管理类代码
-            using (StreamWriter sw = new StreamWriter(ExcelConfig.configArrayCodePath + configArrayName + ".cs"))
-            {
-                sw.Write(configArrayStr);
-            }
-
-            Debug.LogFormat("生成{0}", configName);
-        }
-        private static string HandleSingleFunction(string key, List<string> keyNames, List<string> keyTypes, string functionName, string cfgsDicName, string configArrayStr, string configArrayName)
-        {
-            string FunctionSingleStr = CodeTemplateFactory.FunctionSingleTemplate;
-            CreateParamsString(keyNames, keyTypes, out string paramsStr, out string colNames, out string colValues);
-            FunctionSingleStr = FunctionSingleStr.Replace("{params}", paramsStr);
-            FunctionSingleStr = FunctionSingleStr.Replace("{colNames}", colNames);
-            FunctionSingleStr = FunctionSingleStr.Replace("{colValues}", colValues);
-            FunctionSingleStr = FunctionSingleStr.Replace("{FunctionName}", functionName);
-            FunctionSingleStr = FunctionSingleStr.Replace("{cfgsDicName}", cfgsDicName);
-            //key名称
-            _assignmentBuilder.AppendFormat("\t\t\t{0} = \"{1}\";", key, string.Join("_", keyNames));
-            _assignmentBuilder.AppendLine();
-            //创建索引,查询更快速
-            SQLiteHelper.Instance.CreateIndex(configArrayName, keyNames);
-            return FunctionSingleStr;
-        }
-        private static string HandleGroupFunction(string key, List<string> groupNames, List<string> groupTypes, string functionName, string cfgsGroupDicName, string configArrayStr, string configArrayName)
-        {
-            string FunctionGroupStr = CodeTemplateFactory.FunctionGroupTemplate;
-            CreateParamsString(groupNames, groupTypes, out string paramsStr, out string colNames, out string colValues);
-            FunctionGroupStr = FunctionGroupStr.Replace("{params}", paramsStr);
-            FunctionGroupStr = FunctionGroupStr.Replace("{colNames}", colNames);
-            FunctionGroupStr = FunctionGroupStr.Replace("{colValues}", colValues);
-            FunctionGroupStr = FunctionGroupStr.Replace("{FunctionName}", functionName);
-            FunctionGroupStr = FunctionGroupStr.Replace("{cfgsGroupDicName}", cfgsGroupDicName);
-            //组合key名称
-            _assignmentBuilder.AppendFormat("\t\t\t{0} = \"{1}\";", key, string.Join("_", groupNames));
-            _assignmentBuilder.AppendLine();
-            //创建索引,查询更快速
-            SQLiteHelper.Instance.CreateIndex(configArrayName, groupNames);
-            return FunctionGroupStr;
-
-        }
-        private static void ParseDataColumn(string annotation, string type, string name, string nameWhole, string typeWhole, int column)
-        {
-            annotation = annotation.Replace("\n", " ");
-            if (type.Length > 0 && name.Length > 0)
-            {
-
-                _allNames.Add(nameWhole);
-                _allTypes.Add(typeWhole);
-                _allIndexs.Add(column);
-
-                if (_names.IndexOf(SQL_PREFIX + name) >= 0) return;
-                _names.Add(SQL_PREFIX + name);
-                _types.Add("TEXT");
-                _indexs.Add(column);
-                int indexName = _names.Count - 1;
-
-                //生成解析后的数据变量
-                _declarationBuilder.AppendFormat("\t\t//{0}", annotation.Split('#')[0]);
-                _declarationBuilder.AppendLine();
-                if (type.Contains("[]"))
-                {
-                    //_declarationBuilder.AppendFormat("\t\tpublic {0} {1};", "string", tempName);
-                    //_declarationBuilder.AppendLine();
-                    //_declarationBuilder.AppendLine("\t\t[NonSerialized]");
-                    _declarationBuilder.AppendFormat("\t\tpublic {0} {1}Arr;", type, name);
-                    _declarationBuilder.AppendLine();
-                }
-                else
-                {
-                    _declarationBuilder.AppendFormat("\t\tpublic {0} {1};", type, name);
-                    _declarationBuilder.AppendLine();
-                }
-
-                //添加解析代码
-                if (type == "int")
-                {
-                    //_assignmentBuilder.AppendFormat("\t\t\t{0} = ConfigUtil.GetInt(0, dataRow, {1});", name, index);
-                    _assignmentBuilder.AppendFormat("\t\t\t{0} = ConfigUtil.GetInt(reader.GetString({1}));", name, indexName);
-                    _assignmentBuilder.AppendLine();
-                }
-                else if (type == "float")
-                {
-                    _assignmentBuilder.AppendFormat("\t\t\t{0} = ConfigUtil.GetFloat(reader.GetString({1}));", name, indexName);
-                    _assignmentBuilder.AppendLine();
-                }
-                else if (type == "string")
-                {
-                    _assignmentBuilder.AppendFormat("\t\t\t{0} = reader.GetString({1});", name, indexName);
-                    _assignmentBuilder.AppendLine();
-                }
-                else
-                {
-                    _assignmentBuilder.AppendFormat("\t\t\tvar temp{0} = reader.GetString({1});", name, indexName);
-                    _assignmentBuilder.AppendLine();
-                    if (type.Contains("[][]"))
-                    {
-                        string subType = type.Replace("[][]", "");
-                        _assignmentBuilder.AppendFormat("\t\t\t{0}Arr = ConfigUtil.GetTwoDimensionalArr<{1}>(temp{2});", name, subType, name);
-                        _assignmentBuilder.AppendLine();
-                    }
-                    else if (type.Contains("[]"))
-                    {
-                        string subType = type.Replace("[]", "");
-                        _assignmentBuilder.AppendFormat("\t\t\t{0}Arr = ConfigUtil.GetLinearArr<{1}>(temp{2});", name, subType, name);
-                        _assignmentBuilder.AppendLine();
-                    }
-
-                }
-            }
-        }
-        private static ExcelWorksheet HandleExcelWorksheet(ExcelWorksheet worksheet)
-        {
-            return worksheet;
-        }
-
-        private static void AddDataToSql(ExcelWorksheet worksheet, string configName, string configArrayName)
-        {
-            int rowNum = worksheet.Dimension.End.Row;
-            for (int i = 5; i <= rowNum; i++)
-            {
-                string key = worksheet.Cells[i, 1].Text.Trim();
-                if (key.Length == 0)
-                {
-                    continue;
-                }
-                //解析每行的数据
-                WriteRowDataToSqlite(worksheet.Cells, configArrayName, i);
-                if (_idDic.ContainsKey(key))
-                {
-                    //_hasSameIds = true;
-                }
-                else
-                {
-                    _idDic[key] = key;
-                }
-            }
-        }
-
-        private static void WriteRowDataToSqlite(ExcelRange worksheet, string configArrayName, int row)
-        {
-            string headAniKey = "";
-            string headAniValue = "";
-            List<string> values = new List<string>();
-            var keyValue = worksheet[row, 1].Text.Trim();
-            foreach (var i in _indexs)
-            {
-
-                var fieldName = _allNames[i - 1];
-                var name = fieldName.Split('#')[0];
-                var value = worksheet[row, i].Text.Trim();
-                if (configArrayName == nameof(ItemTypeCfgArray) && name == "name")
-                {
-                    CacheItemTypeByName(keyValue, name, value);
-                    values.Add(value);
-                }
-                else if (configArrayName == nameof(ItemCfgArray) && (name == "itemType" || name == "subType"))
-                {
-                    HandleItemCfgField(keyValue, name, ref value);
-                    values.Add(value);
-                }
-                else
-                {
-                    string _value = GetValue(configArrayName, worksheet, name, row, i);
-                    values.Add(_value);
-                }
-                if (configArrayName == nameof(HeadAniCfgArray))
-                {
-                    if (name == "name")
-                    {
-                        headAniKey = value;
-                    }
-                    else if (name == "headAni")
-                    {
-                        headAniValue = value;
-                    }
-
-                }
-            }
-
-            SQLiteHelper.Instance.InsertValues(configArrayName, values.ToArray());
-        }
-
-        private static void CacheItemTypeByName(string idStr, string fieldName, string value)
-        {
-            _itemTypeDicByName[value] = idStr;
-        }
-
-        private static void HandleItemCfgField(string idStr, string fieldName, ref string value)
-        {
-            // fieldName = fieldName.Substring(1);
-            ET.Log.Debug($"idStr {idStr} fieldName {fieldName} value {value}");
-            int id = int.Parse(idStr);
-            int itemType = (int)Mathf.Floor(id / GameConst.MAX_COUNT_EVERY_TYPE_ITEM);
-            if (fieldName == "itemType")
-            {
-                if (itemType <= ConstDressUpItemType.MAX)
-                {
-                    value = ConstItemType.DRESS_UP.ToString();
-                }
-                else
-                {
-                    value = itemType.ToString();
-                }
-            }
-            else if (fieldName == "subType")
-            {
-
-                if (itemType <= ConstDressUpItemType.MAX)
-                {
-                    string subType;
-                    if (_itemTypeDicByName.TryGetValue(value, out subType))
-                    {
-                        value = subType;
-                    }
-                    else
-                    {
-                        Debug.LogError($"请检查物品 {idStr} 的subType值");
-                    }
-                }
-            }
-        }
-
-        private static void CreateParamsString(List<string> keyNames, List<string> keyTypes, out string paramStr, out string colNames, out string colValues)
-        {
-            paramStr = "";
-            colNames = "";
-            colValues = "";
-            for (var i = 0; i < keyNames.Count; i++)
-            {
-                paramStr += keyTypes[i] + " " + keyNames[i];
-                colNames += $"nameof({keyNames[i]})";
-                colValues += $"{keyNames[i]}.ToString()";
-                if (i < keyNames.Count - 1)
-                {
-                    paramStr += ", ";
-                    colNames += ", ";
-                    colValues += ", ";
-                }
-            }
-        }
-
-        private static string GetValue(string configArrayName, ExcelRange worksheet, string name, int row, int index)
-        {
-            Dictionary<string, List<string>> _twoDimensionalDic = new Dictionary<string, List<string>>();
-            string value = "";
-            for (int i = index - 1; i < _allIndexs.Count; i++)
-            {
-                string _name = _allNames[i];
-                string[] _names = _name.Split('#');
-                string _type = _allTypes[i];
-                string[] _types = _type.Split('#');
-                string _value = worksheet[row, i + 1].Text.Trim();
-                if (_names[0] != name) continue;
-
-
-                if (_type.Contains("[][]") && _type.Contains("#"))
-                {
-                    if (!_twoDimensionalDic.ContainsKey(_types[1]) && string.IsNullOrEmpty(_value))
-                    {
-                        break;
-                    }
-                    if (string.IsNullOrEmpty(_value))
-                    {
-                        ET.Log.Error(configArrayName + "  第" + row + "行  " + _type + "   无数值!name:" + name + ",id:" +
-                                     worksheet[row, 1].Text.ToString());
-                        continue;
-                    }
-                    if (!_twoDimensionalDic.ContainsKey(_types[1]))
-                    {
-                        _twoDimensionalDic.Add(_types[1], new List<string>());
-                    }
-                    _twoDimensionalDic[_types[1]].Add(_value);
-                }
-                else if (_type.Contains("[]") && _type.Contains("#"))
-                {
-                    if (string.IsNullOrEmpty(_value)) continue;
-                    if (string.IsNullOrEmpty(value))
-                    {
-                        value = _value;
-                    }
-                    else
-                    {
-                        value = string.Format("{0};{1}", value, _value);
-                    }
-                }
-                else
-                {
-                    value = _value;
-                    break;
-                }
-            }
-            if (_twoDimensionalDic.Count > 0)
-            {
-                List<string> _values = new List<string>();
-                foreach (string key in _twoDimensionalDic.Keys)
-                {
-                    _values.Add(string.Join("*", _twoDimensionalDic[key]));
-                }
-                value = string.Join(";", _values);
-            }
-            return value;
-        }
-
-    }
-}

+ 0 - 100
GameClient/Assets/Editor/Excel/CodeTemplateFactory.cs

@@ -1,100 +0,0 @@
-using System.Collections;
-using System.IO;
-using UnityEngine;
-
-namespace GFGEditor
-{
-    public class CodeTemplateFactory
-    {
-
-        public static string ConfigTemplate { get; private set; }
-        public static string ConfigArrayTemplate { get; private set; }
-        public static string InitTemplate { get; private set; }
-        public static string DisposeTemplate { get; private set; }
-        public static string FunctionSingleTemplate { get; private set; }
-        public static string FunctionGroupTemplate { get; private set; }
-        public static string FunctionAllTemplate { get; private set; }
-        public static string FunctionAllSingleBlockTemplate { get; private set; }
-        public static string FunctionAllKeyBlockTemplate { get; private set; }
-        public static string FunctionAllGroupBlockTemplate { get; private set; }
-        public static string DisposeAllCfgsCacheTemplate { get; private set; }
-        public static string FunctionDisposeTemplate { get; private set; }
-        public static string StrCfgArrayDisposeTemplate { get; private set; }
-        public static string InitAllCfgsCacheTemplate { get; private set; }
-        public static string FunctionInitTemplate { get; private set; }
-        public static string StrCfgArrayInitTemplate { get; private set; }
-        //public static string ConfigTemplateEditor { get => _configTemplateEditor; }
-        //public static string ConfigArrayTemplateEditor { get => _configArrayTemplateEditor; }
-
-        public static void Init()
-        {
-            ConfigTemplate = File.ReadAllText(ExcelConfig.templatePath + "Config.txt");
-            //using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "Config.txt"))
-            //{
-            //    ConfigTemplate = sr.ReadToEnd();
-            //}
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "ConfigArray.txt"))
-            {
-                ConfigArrayTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "Init.txt"))
-            {
-                InitTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "Dispose.txt"))
-            {
-                DisposeTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionSingle.txt"))
-            {
-                FunctionSingleTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionGroup.txt"))
-            {
-                FunctionGroupTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionAll.txt"))
-            {
-                FunctionAllTemplate = sr.ReadToEnd();
-            }
-
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionAllSingleBlock.txt"))
-            {
-                FunctionAllSingleBlockTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionAllKeyBlock.txt"))
-            {
-                FunctionAllKeyBlockTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionAllGroupBlock.txt"))
-            {
-                FunctionAllGroupBlockTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "DisposeAllCfgsCache.txt"))
-            {
-                DisposeAllCfgsCacheTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionDispose.txt"))
-            {
-                FunctionDisposeTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "StrCfgArrayDisposeBlock.txt"))
-            {
-                StrCfgArrayDisposeTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "InitAllCfgsCache.txt"))
-            {
-                InitAllCfgsCacheTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "FunctionInit.txt"))
-            {
-                FunctionInitTemplate = sr.ReadToEnd();
-            }
-            using (StreamReader sr = new StreamReader(ExcelConfig.templatePath + "StrCfgArrayInitBlock.txt"))
-            {
-                StrCfgArrayInitTemplate = sr.ReadToEnd();
-            }
-        }
-
-    }
-}

+ 0 - 8
GameClient/Assets/Editor/Excel/DLL.meta

@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: b5901dd75ec6a0e49871770254fe6fd7
-folderAsset: yes
-DefaultImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

BIN
GameClient/Assets/Editor/Excel/DLL/EPPlusFree.dll


+ 0 - 33
GameClient/Assets/Editor/Excel/DLL/EPPlusFree.dll.meta

@@ -1,33 +0,0 @@
-fileFormatVersion: 2
-guid: 420801e38bdef0c44bf5f7352caa3520
-PluginImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  iconMap: {}
-  executionOrder: {}
-  defineConstraints: []
-  isPreloaded: 0
-  isOverridable: 0
-  isExplicitlyReferenced: 0
-  validateReferences: 1
-  platformData:
-  - first:
-      Any: 
-    second:
-      enabled: 0
-      settings: {}
-  - first:
-      Editor: Editor
-    second:
-      enabled: 1
-      settings:
-        DefaultValueInitialized: true
-  - first:
-      Windows Store Apps: WindowsStoreApps
-    second:
-      enabled: 0
-      settings:
-        CPU: AnyCPU
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 308
GameClient/Assets/Editor/Excel/ExcelChecker.cs

@@ -1,308 +0,0 @@
-using GFGGame;
-using UnityEngine;
-using System.Collections.Generic;
-using System;
-
-namespace GFGEditor
-{
-    /// <summary>
-    /// 配置表检查器:在有限范围内检查表格间关联的数据是否合法,并打印非法数据
-    /// </summary>
-    public class ExcelChecker
-    {
-        public static void StartCheck()
-        {
-            CheckLuckyBoxCfg();
-            CheckDropOutCfg();
-            CheckStoryChapterCfg();
-            CheckStoryLevelCfg();
-            CheckStoryFightCfg();
-            CheckClothingShopCfg();
-            CheckSuitCfg();
-            CheckSuitGuideMenuCfg();
-            CheckItemCfg();
-            CheckCardStarCfg();
-            CheckCardStoryCfg();
-
-        }
-
-        private static void CheckLuckyBoxCfg()
-        {
-            LuckyBoxCfgArray cfgArray = LuckyBoxCfgArray.Instance;
-            LuckyBoxCfg[] dataArray = cfgArray.dataArray;
-            foreach (LuckyBoxCfg boxCfg in dataArray)
-            {
-                CheckItemIdExist(boxCfg.costID, "抽奖LuckyBoxCfg.costID");
-            }
-        }
-
-        private static void CheckDropOutCfg()
-        {
-            DropOutCfgArray cfgArray = DropOutCfgArray.Instance;
-            DropOutCfg[] dataArray = cfgArray.dataArray;
-            foreach (DropOutCfg cfg in dataArray)
-            {
-                if (cfg.item >= 10000000)//掉落id
-                {
-                    CheckDropOutExist(cfg.item, "掉落DropOutCfg.item");
-                }
-                else
-                {
-                    CheckItemIdExist(cfg.item, "掉落DropOutCfg.item");
-                }
-            }
-        }
-
-        private static void CheckStoryChapterCfg()
-        {
-            StoryChapterCfgArray cfgArray = StoryChapterCfgArray.Instance;
-            StoryChapterCfg[] dataArray = cfgArray.dataArray;
-            foreach (StoryChapterCfg cfg in dataArray)
-            {
-                CheckItemsExist(cfg.bonus1Arr, "剧情副本StoryChapterCfg.bonus1");
-                CheckItemsExist(cfg.bonus2Arr, "剧情副本StoryChapterCfg.bonus2");
-                CheckItemsExist(cfg.bonus3Arr, "剧情副本StoryChapterCfg.bonus3");
-            }
-        }
-
-        private static void CheckStoryLevelCfg()
-        {
-            StoryLevelCfgArray cfgArray = StoryLevelCfgArray.Instance;
-            StoryLevelCfg[] dataArray = cfgArray.dataArray;
-            foreach (StoryLevelCfg cfg in dataArray)
-            {
-                CheckItemsExist(cfg.bonusOnceArr, "剧情副本StoryLevelCfg.bonusOnce");
-                CheckStoryDialogExist(cfg.storyStartID, "剧情副本StoryLevelCfg.storyStartID");
-                CheckStoryFightExist(cfg.fightID, "剧情副本StoryLevelCfg.fightID");
-            }
-        }
-
-        private static void CheckStoryFightCfg()
-        {
-            StoryFightCfgArray cfgArray = StoryFightCfgArray.Instance;
-            StoryFightCfg[] dataArray = cfgArray.dataArray;
-            foreach (StoryFightCfg cfg in dataArray)
-            {
-                if (cfg.needSuitId > 0)
-                {
-                    CheckSuitExist(cfg.needSuitId, "剧情副本StoryFightCfg.needSuitId");
-                }
-                else if (cfg.needItemId > 0)
-                {
-                    CheckItemIdExist(cfg.needItemId, "剧情副本StoryFightCfg.needItemId");
-                }
-                CheckItemsExist(cfg.bonusBaseArr, "剧情副本StoryFightCfg.bonusBase");
-                foreach (int value in cfg.bonusRandomArr)
-                {
-                    CheckDropOutExist(value, "剧情副本StoryFightCfg.bonusRandom");
-                }
-            }
-        }
-
-        private static void CheckClothingShopCfg()
-        {
-            List<ShopCfg> dataArray = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.FU_ZHUANG_DIAN, ConstStoreSubId.FU_ZHUANG_DIAN);
-            foreach (ShopCfg cfg in dataArray)
-            {
-                CheckItemIdExist(cfg.itemId, "商城ClothingShopCfg.itemID");
-                CheckItemIdExist(cfg.CostIdReal, "商城ClothingShopCfg.costID");
-            }
-        }
-
-        private static void CheckSuitCfg()
-        {
-            SuitCfgArray cfgArray = SuitCfgArray.Instance;
-            SuitCfg[] dataArray = cfgArray.dataArray;
-            foreach (SuitCfg suitCfg in dataArray)
-            {
-                CheckItemsExist(suitCfg.partsArr, "套装suitCfg.parts");
-                CheckItemsExist(suitCfg.partsOptionalArr, "套装suitCfg.partsOptional");
-            }
-        }
-
-        private static void CheckSuitGuideMenuCfg()
-        {
-            SuitGuideMenuCfgArray cfgArray = SuitGuideMenuCfgArray.Instance;
-            SuitGuideMenuCfg[] dataArray = cfgArray.dataArray;
-            foreach (SuitGuideMenuCfg cfg in dataArray)
-            {
-                if (cfg.suitIds.Length > 0)
-                {
-                    string[] values = cfg.suitIds.Split(';');
-                    foreach (string value in values)
-                    {
-                        if (value.Length > 0)
-                        {
-                            int valueInt = int.Parse(value);
-                            CheckSuitExist(valueInt, "图鉴SuitGuideMenuCfg.suitIds");
-                        }
-                    }
-                }
-            }
-        }
-
-        private static void CheckClothingSyntheticCfg()
-        {
-            //ClothingSyntheticCfgArray cfgArray = ClothingSyntheticCfgArray.Instance;
-            //ClothingSyntheticCfg[] dataArray = cfgArray.dataArray;
-            //foreach(ClothingSyntheticCfg cfg in dataArray)
-            //{
-            //    CheckItemIdExist(cfg.costID, "合成ClothingSyntheticCfg.costID");
-            //    CheckItemsExist(cfg.materiarsArr, "合成ClothingSyntheticCfg.materiars");
-            //}
-        }
-
-        private static void CheckItemCfg()
-        {
-            ItemCfgArray cfgArray = ItemCfgArray.Instance;
-            ItemCfg[] dataArray = cfgArray.dataArray;
-            foreach (ItemCfg cfg in dataArray)
-            {
-                if (string.IsNullOrEmpty(cfg.resLayer1) && string.IsNullOrEmpty(cfg.resLayer2) && string.IsNullOrEmpty(cfg.resLayer3) && ItemUtilCS.IsDressUpItem(cfg.id))
-                {
-                    ET.Log.Error(new Exception("物品" + cfg.id + "没有配置显示层"));
-                }
-                CheckClothingSyntheticCfgExist(cfg);
-            }
-        }
-        //=====================================================================================================
-
-        private static void CheckItemIdExist(int id, string keyName)
-        {
-            if (id > 0)
-            {
-                ItemCfgArray cfgArray = ItemCfgArray.Instance;
-                ItemCfg itemCfg = cfgArray.GetCfg(id);
-                if (itemCfg == null)
-                {
-                    Debug.LogErrorFormat("{0}配置的物品{1}不存在", new object[] { keyName, id });
-                }
-            }
-        }
-
-        private static void CheckItemsExist(string itemsStr, string keyName)
-        {
-            string[] itemInfos = itemsStr.Split(';');
-            foreach (string itemInfo in itemInfos)
-            {
-                if (itemInfo.Length > 0)
-                {
-                    string[] itemValues = itemInfo.Split('*');
-                    CheckItemIdExist(int.Parse(itemValues[0]), keyName);
-                }
-            }
-        }
-
-        private static void CheckItemsExist(int[] items, string keyName)
-        {
-            foreach (int itemId in items)
-            {
-                CheckItemIdExist(itemId, keyName);
-            }
-        }
-
-        private static void CheckItemsExist(int[][] items, string keyName)
-        {
-            foreach (int[] itemInfo in items)
-            {
-                CheckItemIdExist(itemInfo[0], keyName);
-            }
-        }
-
-        private static void CheckStoryDialogExist(string id, string keyName)
-        {
-            if (id.Length > 0)
-            {
-                StoryDialogCfgArray cfgArray = StoryDialogCfgArray.Instance;
-                List<StoryDialogCfg> cfg = cfgArray.GetCfgsByid(id);
-                if (cfg == null && cfg.Count > 0)
-                {
-                    Debug.LogErrorFormat("{0}配置的对话{1}不存在", new object[] { keyName, id });
-                }
-            }
-        }
-
-        private static void CheckStoryFightExist(string id, string keyName)
-        {
-            if (id.Length > 0)
-            {
-                StoryFightCfgArray cfgArray = StoryFightCfgArray.Instance;
-                StoryFightCfg cfg = cfgArray.GetCfg(id);
-                if (cfg == null)
-                {
-                    Debug.LogErrorFormat("{0}配置的战斗{1}不存在", new object[] { keyName, id });
-                }
-            }
-        }
-
-        private static void CheckDropOutExist(int id, string keyName)
-        {
-            var arr = DropOutCfgArray.Instance.GetCfgsByid(id);
-            List<DropOutCfg> dropOutCfgs = new List<DropOutCfg>(arr);
-            if (dropOutCfgs == null || dropOutCfgs.Count <= 0)
-            {
-                Debug.LogErrorFormat("{0}配置的掉落{1}不存在", new object[] { keyName, id });
-            }
-        }
-
-        private static void CheckSuitExist(int id, string keyName)
-        {
-            if (id > 0)
-            {
-                SuitCfgArray cfgArray = SuitCfgArray.Instance;
-                SuitCfg cfg = cfgArray.GetCfg(id);
-                if (cfg == null)
-                {
-                    Debug.LogErrorFormat("{0}配置的套装{1}不存在", new object[] { keyName, id });
-                }
-            }
-        }
-
-        private static void CheckClothingSyntheticCfgExist(ItemCfg itemCfg)
-        {
-            if (itemCfg.itemType == ConstItemType.DRESS_UP && itemCfg.suitId > 0)
-            {
-                var suitCfg = SuitCfgArray.Instance.GetCfg(itemCfg.suitId);
-                if (suitCfg != null && suitCfg.syntheticType > 0)
-                {
-                    if (itemCfg.syntheticCostID <= 0 || itemCfg.syntheticCostNum <= 0 || itemCfg.syntheticMateriarsArr.Length <= 0)
-                    {
-                        Debug.LogErrorFormat("服装{0}没有对应的合成消耗配置", new object[] { itemCfg.id });
-                    }
-                }
-            }
-        }
-
-        private static void CheckStoryLevelCfgExist(int id, string keyName)
-        {
-            if (id > 0)
-            {
-                StoryLevelCfgArray cfgArray = StoryLevelCfgArray.Instance;
-                StoryLevelCfg cfg = cfgArray.GetCfg(id);
-                if (cfg == null)
-                {
-                    Debug.LogErrorFormat("{0}配置的关卡{1}不存在", new object[] { keyName, id });
-                }
-            }
-        }
-        private static void CheckCardStarCfg()
-        {
-            CardStarCfgArray cfgArray = CardStarCfgArray.Instance;
-            CardStarCfg[] dataArray = cfgArray.dataArray;
-            foreach (CardStarCfg cfg in dataArray)
-            {
-                CheckItemsExist(cfg.materiarsArr, "词牌CardStarCfg.materiars");
-            }
-        }
-        private static void CheckCardStoryCfg()
-        {
-            CardStoryCfgArray cfgArray = CardStoryCfgArray.Instance;
-            CardStoryCfg[] dataArray = cfgArray.dataArray;
-            foreach (CardStoryCfg cfg in dataArray)
-            {
-                CheckStoryDialogExist(cfg.storyStartID, "词牌CardStoryCfg.storyStartID");
-            }
-        }
-
-    }
-}

+ 0 - 48
GameClient/Assets/Editor/Excel/ExcelConfig.cs

@@ -1,48 +0,0 @@
-using System.Collections;
-using UnityEngine;
-
-namespace GFGEditor
-{
-    public class ExcelConfig
-    {
-        public static string excelsRootDirNameDressUp = "Config";
-        /// <summary>
-        /// 存放excel表文件夹的的路径
-        /// </summary>
-        //public const string excelsFolderPath = "../../../gfg/tools/Config";
-        public static string excelsFolderPath { get { return $"../../../gfg/tools/{excelsRootDirNameDressUp}/data/"; } }
-        /// <summary>
-        /// 存放临时excel表文件夹的的路径
-        /// </summary>
-        public static string excelsCacheFolderPath {
-            get{ return excelsFolderPath + "/CacheConfig/"; }
-            
-        }
-
-        /// <summary>
-        /// 存放编辑器序列化文件的文件夹路径
-        /// </summary>
-        public const string configCodePath = "Assets/Game/CSShare/GFG/HotUpdate/ExcelConfig/GenCode/Item/";
-
-        /// <summary>
-        /// 存放编辑器序列化文件的文件夹路径
-        /// </summary>
-        public const string configArrayCodePath = "Assets/Game/CSShare/GFG//HotUpdate/ExcelConfig/GenCode/Array/";
-
-        /// <summary>
-        /// 存放数据Dispose、Init文件的文件夹路径
-        /// </summary>
-        public const string handleAllCfgsCache = "Assets/Game/CSShare/GFG//HotUpdate/ExcelConfig/GenCode/";
-
-
-        /// <summary>
-        /// 存放Excel转化CS文件的文件夹路径
-        /// </summary>
-        public const string templatePath = "Assets/Editor/Excel/Template/";
-
-        /// <summary>
-        /// 
-        /// </summary>
-        public const string CONFIG_ARRAY_TEMPLATE = "{0}{1}Array";
-    }
-}

+ 0 - 317
GameClient/Assets/Editor/Excel/ExcelReader.cs

@@ -1,317 +0,0 @@
-using System.IO;
-using UnityEditor;
-using UnityEngine;
-using System.Data;
-using GFGEditor;
-using OfficeOpenXml;
-using System;
-using System.Collections.Generic;
-
-namespace GFGEditor
-{
-    public class ExcelReader
-    {
-        public delegate void RowCollectionHandler(ExcelWorksheet rowCollection, string configName,
-            string configArrayName);
-
-        public static void ReadExcel(RowCollectionHandler rowCollectionHandler)
-        {
-            string[] files = Directory.GetFiles(ExcelConfig.excelsCacheFolderPath);
-            int totalCount = files.Length;
-            string strCfgArrayDispose = "";
-            string strCfgArrayInit = "";
-            for (int i = 0; i < totalCount; i++)
-            {
-                string filePath = files[i];
-                string fileName = Path.GetFileNameWithoutExtension(filePath).Trim();
-                if (!fileName.Contains("~") && !fileName.StartsWith(".") && fileName != "")
-                {
-                    EditorUtility.DisplayProgressBar("进度", $"fileNmae{fileName}", 1);
-                    ET.Log.Debug($"fileName {fileName}");
-                    Stream stream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);
-                    ExcelPackage excelPackage = new ExcelPackage(stream);
-                    //IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
-                    //DataSet result = excelReader.AsDataSet();
-
-                    HandleTableCollection(excelPackage.Workbook.Worksheets, rowCollectionHandler, out string dispose,
-                        out string init);
-                    strCfgArrayDispose = strCfgArrayDispose + dispose;
-                    strCfgArrayInit = strCfgArrayInit + init;
-                    // stream.Dispose();
-                    // excelPackage.Dispose();
-                }
-            }
-
-            string functionDispose = CodeTemplateFactory.FunctionDisposeTemplate;
-            functionDispose = functionDispose.Replace("{StrCfgArrayDispose}", strCfgArrayDispose);
-            string disposeAllCfgsCache = CodeTemplateFactory.DisposeAllCfgsCacheTemplate;
-            disposeAllCfgsCache = disposeAllCfgsCache.Replace("{FunctionDispose}", functionDispose);
-            using (StreamWriter sw = new StreamWriter(ExcelConfig.handleAllCfgsCache + "DisposeAllCfgsCache.cs"))
-            {
-                sw.Write(disposeAllCfgsCache);
-            }
-
-            string functionInit = CodeTemplateFactory.FunctionInitTemplate;
-            functionInit = functionInit.Replace("{StrCfgArrayInit}", strCfgArrayInit);
-            string initAllCfgsCache = CodeTemplateFactory.InitAllCfgsCacheTemplate;
-            initAllCfgsCache = initAllCfgsCache.Replace("{FunctionInit}", functionInit);
-            using (StreamWriter sw = new StreamWriter(ExcelConfig.handleAllCfgsCache + "InitAllCfgsCache.cs"))
-            {
-                sw.Write(initAllCfgsCache);
-            }
-        }
-
-        private static void HandleTableCollection(ExcelWorksheets Worksheets, RowCollectionHandler rowCollectionHandler,
-            out string strDispose, out string strInit)
-        {
-            strDispose = "";
-            strInit = "";
-            for (int i = 1; i <= Worksheets.Count; i++)
-            {
-                ExcelWorksheet worksheet = Worksheets[i];
-                string configArrayName = HandleTable(worksheet, rowCollectionHandler);
-                if (string.IsNullOrEmpty(configArrayName)) continue;
-                string dispose =
-                    CodeTemplateFactory.StrCfgArrayDisposeTemplate.Replace("{configArrayName}", configArrayName);
-                strDispose = strDispose + "\n" + dispose;
-                string init = CodeTemplateFactory.StrCfgArrayInitTemplate.Replace("{configArrayName}", configArrayName);
-                strInit = strInit + "\n" + init;
-            }
-        }
-
-        private static string HandleTable(ExcelWorksheet worksheet, RowCollectionHandler rowCollectionHandler)
-        {
-            string[] names = worksheet.Name.Split('_');
-            if (names.Length < 2)
-            {
-                //未正确命名的表格
-                return "";
-            }
-
-            if (worksheet.Name.Contains("#"))
-            {
-                //被注释的表格
-                return "";
-            }
-
-            string configItemName = names[1];
-            string managerTag = "";
-            if (names.Length > 2)
-            {
-                managerTag = names[2];
-            }
-
-            //文件名及管理器名
-            string configManagerName = string.Format(ExcelConfig.CONFIG_ARRAY_TEMPLATE, configItemName, managerTag);
-
-            rowCollectionHandler(worksheet, configItemName, configManagerName);
-
-            return configManagerName;
-        }
-
-
-        public static void WriteExcle()
-        {
-            DeleteExcle();
-            string[] files = Directory.GetFiles(ExcelConfig.excelsFolderPath);
-            int totalCount = files.Length;
-            for (int i = 0; i < totalCount; i++)
-            {
-                string filePath = files[i];
-                string fileName = Path.GetFileNameWithoutExtension(filePath);
-                if (!fileName.Contains("~") && !fileName.Contains("0000自动生表工具") && !fileName.Contains("zzzzGFG数值")
-                    && fileName != "" && !fileName.StartsWith("."))
-                {
-                    Debug.Log(fileName + "开始导入");
-                    string newPath = ExcelConfig.excelsCacheFolderPath + fileName + ".xlsx";
-                    Stream newStream = new FileStream(newPath, FileMode.OpenOrCreate, FileAccess.ReadWrite,
-                        FileShare.ReadWrite);
-                    ExcelPackage newExcelPackage = new ExcelPackage(newStream);
-                    ExcelWorksheets newWorksheets = newExcelPackage.Workbook.Worksheets;
-
-                    Stream stream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);
-                    ExcelPackage excelPackage = new ExcelPackage(stream);
-                    ExcelWorksheets Worksheets = excelPackage.Workbook.Worksheets;
-                    for (int j = 1; j <= Worksheets.Count; j++)
-                    {
-                        ExcelWorksheet worksheet = Worksheets[j];
-                        string[] names = worksheet.Name.Split('_');
-                        if (names.Length < 2) continue;
-
-                        ExcelWorksheet newWorksheet = null;
-                        for (int k = 1; k <= newWorksheets.Count; k++)
-                        {
-                            string[] newNames = newWorksheets[k].Name.Split('_');
-                            if (names.Length < 2 || names.Length != newNames.Length) continue;
-
-                            for (int h = 1; h < names.Length; h++)
-                            {
-                                if (newNames[h] == names[h])
-                                {
-                                    newWorksheet = newWorksheets[k];
-                                }
-                                else
-                                {
-                                    newWorksheet = null;
-                                    break;
-                                }
-                            }
-                        }
-
-                        if (newWorksheet == null)
-                        {
-                            newWorksheets.Add(worksheet.Name);
-                            newWorksheet = newWorksheets[newWorksheets.Count];
-                        }
-
-                        WriteTitle(newWorksheet, worksheet);
-                        // Debug.Log(worksheet.Name + "写入完成");
-                    }
-
-                    newExcelPackage.Save();
-                    excelPackage.Save();
-                    newStream.Close();
-                    stream.Close();
-                    newStream.Dispose();
-                    stream.Dispose();
-                    Debug.Log(fileName + "写入完成");
-                }
-            }
-        }
-
-        private static void WriteTitle(ExcelWorksheet newWorksheet, ExcelWorksheet worksheet)
-        {
-            int newColumnNum = newWorksheet.Dimension == null ? 0 : newWorksheet.Dimension.End.Column;
-
-            int columnNum = worksheet.Dimension.End.Column;
-            for (int i = 1; i <= columnNum; i++)
-            {
-                string name = worksheet.Cells[3, i].Text.Trim();
-                string type = worksheet.Cells[2, i].Text.Trim();
-                if (name.Length == 0)
-                {
-                    continue;
-                }
-
-                bool needWriteColumn = true;
-                for (int j = 1; j <= newColumnNum; j++)
-                {
-                    string newName = newWorksheet.Cells[3, j].Text.Trim();
-                    string newType = newWorksheet.Cells[2, j].Text.Trim();
-                    if (newWorksheet.Name != worksheet.Name && name == newName && type == newType)
-                    {
-                        needWriteColumn = false;
-                    }
-                }
-
-                if (needWriteColumn)
-                {
-                    newColumnNum = newWorksheet.Dimension == null ? 0 : newWorksheet.Dimension.End.Column;
-                    newWorksheet.InsertColumn(newColumnNum + 1, 1);
-
-                    for (int k = 1; k <= 4; k++)
-                    {
-                        newWorksheet.Cells[k, newColumnNum + 1].Value = worksheet.Cells[k, i].Value;
-                    }
-                }
-            }
-
-            WriteCell(newWorksheet, worksheet);
-        }
-
-        private static void WriteCell(ExcelWorksheet newWorksheet, ExcelWorksheet worksheet)
-        {
-            int newRowNum = newWorksheet.Dimension == null ? 0 : newWorksheet.Dimension.End.Row;
-            newWorksheet.InsertRow(newRowNum + 1, 2);
-            int newColumnNum = newWorksheet.Dimension == null ? 0 : newWorksheet.Dimension.End.Column;
-
-            int rowNum = worksheet.Dimension.End.Row;
-            int columnNum = worksheet.Dimension.End.Column;
-            if (worksheet.Name == "联盟题库_LeagueQuestionCfg")
-            {
-                Debug.Log("");
-            }
-
-            for (int i = 5; i <= rowNum; i++)
-            {
-                newRowNum = newWorksheet.Dimension == null ? 0 : newWorksheet.Dimension.End.Row;
-                newWorksheet.InsertRow(newRowNum + 1, 1);
-                int column = 0;
-                Dictionary<string, int> dicArray = new Dictionary<string, int>();
-                for (int j = 1; j <= columnNum; j++)
-                {
-                    string title = worksheet.Cells[3, j].Text.Trim();
-                    string type = worksheet.Cells[2, j].Text.Trim();
-                    if (type.Contains("[]#") && !type.Contains("[][]#"))
-                    {
-                        if (!dicArray.ContainsKey(title))
-                        {
-                            dicArray[title] = 0;
-                        }
-
-                        dicArray[title] = dicArray[title] + 1;
-                    }
-
-                    if (string.IsNullOrEmpty(title)) continue;
-
-                    Dictionary<string, int> newDicArray = new Dictionary<string, int>();
-                    for (int k = 1; k <= newColumnNum; k++)
-                    {
-                        string newTitle = newWorksheet.Cells[3, k].Text.Trim();
-                        string newType = newWorksheet.Cells[2, k].Text.Trim();
-                        if (newType.Contains("[]#") && !newType.Contains("[][]#"))
-                        {
-                            if (!newDicArray.ContainsKey(newTitle))
-                            {
-                                newDicArray[newTitle] = 0;
-                            }
-
-                            newDicArray[newTitle] = newDicArray[newTitle] + 1;
-                        }
-
-                        bool isSame = newTitle == title && newType == type;
-                        if (isSame && (dicArray.ContainsKey(title) && newDicArray.ContainsKey(newTitle) &&
-                                dicArray[title] == newDicArray[newTitle] || !dicArray.ContainsKey(title) &&
-                                !newDicArray.ContainsKey(newTitle)))
-                        {
-                            column = k;
-                            break;
-                        }
-                    }
-
-                    newWorksheet.Cells[newRowNum + 1, column].Value = worksheet.Cells[i, j].Value;
-                }
-            }
-
-            newRowNum = newWorksheet.Dimension == null ? 0 : newWorksheet.Dimension.End.Row;
-            newWorksheet.InsertRow(newRowNum + 1, 2);
-        }
-
-        private static void DeleteExcle()
-        {
-            string path = ExcelConfig.excelsCacheFolderPath;
-            if (Directory.Exists(path) == false)
-            {
-                Directory.CreateDirectory(path);
-            }
-
-            DirectoryInfo dir = new DirectoryInfo(path);
-            // FileInfo[] files = dir.GetFiles();
-            string[] files = Directory.GetFiles(path);
-            try
-            {
-                foreach (var item in files)
-                {
-                    File.Delete(item);
-                }
-
-                return;
-            }
-            catch (Exception)
-            {
-                ET.Log.Debug("Delete Failed!");
-                return;
-            }
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/ExcelReader.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: dbf35b13ec1f2ef4db1ab987d28e06e6
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 22
GameClient/Assets/Editor/Excel/ExcelScanner.cs

@@ -1,22 +0,0 @@
-namespace GFGEditor
-{
-    public class ExcelScanner
-    {
-        public static void StartScan()
-        {
-            //写入商店物品类型Index
-            ShopScanner.StartScan(); ;
-            //扫描物品表获取途径并更新数据库
-            ItemApproachScanner.startScan();
-            //扫描副本
-            InstanceZonesScanner.StartScan();
-            // //写入词牌最大等级
-            CardScanner.StartScan();
-
-            GiftBagScanner.StartScan();
-            FieldScanner.StartScan();
-            LeagueScanner.StartScan();
-            //SuitGuideScanner.StartScan();
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/ExcelScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 8e2aedd14cd2b83479591f39dd77c6fe
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 8
GameClient/Assets/Editor/Excel/Scanner.meta

@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 40e52f29bc8865749b432ecf7fc026d2
-folderAsset: yes
-DefaultImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 66
GameClient/Assets/Editor/Excel/Scanner/CardScanner.cs

@@ -1,66 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using GFGGame;
-using UnityEngine;
-
-namespace GFGEditor
-{
-    public class CardScanner
-    {
-        private static Dictionary<int, int> levelCountDIc = new Dictionary<int, int>();
-
-        public static void StartScan()
-        {
-            levelCountDIc.Clear();
-            var dataArray = CardLvlCfgArray.Instance.dataArray;
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                foreach (var cfg in dataArray)
-                {
-                    int count = levelCountDIc.ContainsKey(cfg.rarity) ? levelCountDIc[cfg.rarity] : 0;
-                    levelCountDIc[cfg.rarity] = count + 1;
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                ICollection<int> keys = levelCountDIc.Keys;
-                foreach (int key in keys)
-                {
-                    int count = levelCountDIc[key];
-
-                    var names = new string[] { "maxCardLvl" };
-                    var values = new string[] { "" + count };
-                    SQLiteHelper.Instance.UpdateValues(nameof(CardRarityCfgArray), names, values, "cardRarity", key.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-
-        }
-
-        public static void WriteCardRarity()
-        {
-
-        }
-
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/CardScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: e11c0c22df21fff4ca00f8e6daf8fc20
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 55
GameClient/Assets/Editor/Excel/Scanner/FieldScanner.cs

@@ -1,55 +0,0 @@
-using System;
-using System.Collections.Generic;
-using GFGGame;
-
-namespace GFGEditor
-{
-    public class FieldScanner
-    {
-        private static Dictionary<int, int> numDic = new Dictionary<int, int>();
-        private static Dictionary<int, int> needPowerDic = new Dictionary<int, int>();
-
-        public static void StartScan()
-        {
-            numDic.Clear();
-            needPowerDic.Clear();
-            var dataArray = FieldCfgArray.Instance.dataArray;
-
-            for (int i = 0; i < dataArray.Length; i++)
-            {
-                FieldCfg cfg = dataArray[i];
-                List<StoryLevelCfg> storyLevelCfgs = StoryLevelCfgArray.Instance.GetCfgsBytypeAndsubTypeAndchapterId(cfg.type, 0, cfg.id);
-                int num = storyLevelCfgs.Count;
-                int needPower = 0;
-                for (int j = 0; j < num; j++)
-                {
-                    needPower += storyLevelCfgs[j].power;
-                }
-                numDic.Add(cfg.id, num);
-                needPowerDic.Add(cfg.id, needPower);
-            }
-
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                foreach (var cfg in dataArray)
-                {
-                    var num = numDic[cfg.id];
-                    var needPower = needPowerDic[cfg.id];
-
-                    var names = new string[] { nameof(cfg.num) };
-                    var values = new string[] { "" + num };
-                    SQLiteHelper.Instance.UpdateValues(nameof(FieldCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/FieldScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 506ddb397cc326f44aa434728903d97d
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 55
GameClient/Assets/Editor/Excel/Scanner/GiftBagScanner.cs

@@ -1,55 +0,0 @@
-using System;
-using System.Collections.Generic;
-using GFGGame;
-
-namespace GFGEditor
-{
-    public class GiftBagScanner
-    {
-
-        public static void StartScan()
-        {
-            var dataArray = GiftBagCfgArray.Instance.dataArray;
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                foreach (var cfg in dataArray)
-                {
-                    int type = 0;
-                    if (cfg.costId == 0)
-                    {
-
-                    }
-                    switch (cfg.costId)
-                    {
-                        case 0:
-                            type = 0;
-                            break;
-                        case ConstItemID.DIAMOND_RED:
-                            type = 1;
-                            break;
-                        case 2:
-                            type = 2;
-                            break;
-                        default:
-                            type = 3;
-                            break;
-                    }
-                    // count++;
-
-                    var names = new string[] { nameof(cfg.costType) };
-                    var values = new string[] { "" + type };
-                    SQLiteHelper.Instance.UpdateValues(nameof(GiftBagCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/GiftBagScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 0499b57893b339f4094723086336ed02
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 99
GameClient/Assets/Editor/Excel/Scanner/InstanceZonesScanner.cs

@@ -1,99 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using GFGGame;
-
-namespace GFGEditor
-{
-    public class InstanceZonesScanner
-    {
-        //计算每个副本的关卡数
-        private static Dictionary<int, int> levelCountDIc = new Dictionary<int, int>();
-        public static void StartScan()
-        {
-            levelCountDIc.Clear();
-            var dataArray = StoryLevelCfgArray.Instance.dataArray;
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                foreach (var cfg in dataArray)
-                {
-                    var key = CalculateHelper.GenerateInstanceZonesLevelStateKey(cfg.type, cfg.subType, cfg.chapterId);
-                    levelCountDIc.TryGetValue(key, out var count);
-                    count++;
-                    levelCountDIc[key] = count;
-                    var names = new string[] { nameof(cfg.order) };
-                    var values = new string[] { "" + count };
-                    SQLiteHelper.Instance.UpdateValues(nameof(StoryLevelCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-
-            //写入
-            WriteStoryChapter();
-            WriteStudioChapter();
-        }
-
-        public static void WriteStoryChapter()
-        {
-            //写入
-            var dataArray = StoryChapterCfgArray.Instance.dataArray;
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                foreach (var cfg in dataArray)
-                {
-                    var key = CalculateHelper.GenerateInstanceZonesLevelStateKey(cfg.type, cfg.subType, cfg.id);
-                    levelCountDIc.TryGetValue(key, out var count);
-                    var names = new string[] { nameof(cfg.levelCount) };
-                    var values = new string[] { "" + count };
-                    SQLiteHelper.Instance.UpdateValues(nameof(StoryChapterCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-
-        }
-
-        public static void WriteStudioChapter()
-        {
-            //写入
-            var dataArray = StudioCfgArray.Instance.dataArray;
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                foreach (var cfg in dataArray)
-                {
-                    var key = CalculateHelper.GenerateInstanceZonesLevelStateKey(cfg.type, cfg.subType, cfg.id);
-                    levelCountDIc.TryGetValue(key, out var count);
-                    var names = new string[] { nameof(cfg.levelCount) };
-                    var values = new string[] { "" + count };
-                    SQLiteHelper.Instance.UpdateValues(nameof(StudioCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                throw (e);
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/InstanceZonesScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 958b342c1a9bccf42807b4771db3a319
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 910
GameClient/Assets/Editor/Excel/Scanner/ItemApproachScanner.cs

@@ -1,910 +0,0 @@
-using System.Collections.Generic;
-using UnityEngine;
-using GFGGame;
-using System;
-using System.Linq;
-using ET;
-
-namespace GFGEditor
-{
-    /// <summary>
-    /// 物品扫描器:
-    /// 1.扫描获取途径,并填入物品表的获取途径字段
-    /// 2.扫描套装部件个数
-    /// </summary>
-    public class ItemApproachScanner
-    {
-        private delegate string GetApproachCall(int itemId);
-
-        public static void startScan()
-        {
-            ItemCfg[] dataArray = ItemCfgArray.Instance.dataArray;
-            GetApproachCall[] actions = new GetApproachCall[] { GetClothingShopApproach, GetLeaguePrayApproach, GetLeagueAnswerApproach, CheckStoreApproach, GetClothingSyntheticApproach, GetSuitGuideApproach, GetSuitSyntheticApproach, GetClothingDecomposeApproach, CheckClothingFosterApproach, CheckDailyTaskApproach, CheckWeeklyTaskApproach, GetZhaiXingApproach, GetStoryLevelApproach, GetArenaApproach,GetHeavenApproach ,GetOpenServerFightApproach, GetYuanXiaoGameConsumeApproach, GetYuanXiaoRewardItemApproach, GetSkillBookSyntheticApproach };
-            Dictionary<SuitCfg, List<int>> suitDic = new Dictionary<SuitCfg, List<int>>();
-            Dictionary<ItemCfg, List<int>> syntheticSuitDic = new Dictionary<ItemCfg, List<int>>();
-            Dictionary<SuitCfg, Dictionary<string, string>> suitTagsDic = new Dictionary<SuitCfg, Dictionary<string, string>>();
-
-            int suitPartTotalCount = 0;
-            int clothingPartsCount = 0;
-            int cardCount = 0;
-            foreach (ItemCfg cfg in dataArray)
-            {
-                HandleItemAndSuitTable(cfg, suitDic);
-                HandleItemApproch(cfg, actions);
-                HandleItemSyntheticSuit(cfg, syntheticSuitDic);
-                HandleItemAndDressUpTable(cfg, ref clothingPartsCount);
-                HandleItemAndCardTable(cfg, ref cardCount);
-                HandleItemAndSuitTags(cfg, suitTagsDic);
-            }
-            var globalCfg = GlobalCfgArray.globalCfg;
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                //物品
-                foreach (ItemCfg cfg in dataArray)
-                {
-                    var names = new string[] { nameof(cfg.subType), nameof(cfg.itemType), nameof(cfg.approach), nameof(cfg.isHide) };
-                    var values = new string[] { "" + cfg.subType, "" + cfg.itemType, "" + cfg.approach, "" + cfg.isHide };
-                    SQLiteHelper.Instance.UpdateValues(nameof(ItemCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
-                }
-                //套装
-                foreach (var a in suitDic)
-                {
-                    var names = new string[] { nameof(a.Key.partsArr).Replace("Arr", "") };
-                    var values = new string[] { string.Join(";", a.Value) };
-                    SQLiteHelper.Instance.UpdateValues(nameof(SuitCfgArray), names, values, nameof(a.Key.id), a.Key.id.ToString());
-
-                    if (a.Key.isHide <= 0)
-                    {
-                        if (a.Key.id != 210000)
-                        {
-                            suitPartTotalCount += a.Value.Count;
-                        }
-                    }
-                }
-                globalCfg.suitPartTotalCount = suitPartTotalCount;
-                globalCfg.ClothingPartsCount = clothingPartsCount;
-                globalCfg.CardCount = cardCount;
-                UpdateGlobalCfg(globalCfg);
-
-                //材料对应的套装id
-                foreach (var a in syntheticSuitDic)
-                {
-                    var names = new string[] { nameof(a.Key.syntheticSuitArr).Replace("Arr", "") };
-                    var values = new string[] { string.Join(";", a.Value) };
-                    SQLiteHelper.Instance.UpdateValues(nameof(ItemCfgArray), names, values, nameof(a.Key.id), a.Key.id.ToString());
-                }
-
-                //套装属性累加
-                foreach (var a in suitTagsDic)
-                {
-                    var names = new string[] { nameof(a.Key.tagsArr).Replace("Arr", "") };
-                    var value = "";
-                    foreach (var e in a.Value)
-                    {
-                        value = value + e.Key + "*" + e.Value + ";";
-                    }
-                    var values = new string[] { string.Join(";", value) };
-                    SQLiteHelper.Instance.UpdateValues(nameof(SuitCfgArray), names, values, nameof(a.Key.id), a.Key.id.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-        }
-
-        private static void UpdateGlobalCfg(GlobalCfg globalCfg)
-        {
-            var names = new string[]
-            { nameof(globalCfg.suitPartTotalCount), nameof(globalCfg.ClothingPartsCount), nameof(globalCfg.CardCount) };
-            var values = new string[]
-            { globalCfg.suitPartTotalCount.ToString(), globalCfg.ClothingPartsCount.ToString(), globalCfg.CardCount.ToString() };
-            SQLiteHelper.Instance.UpdateValues(nameof(GlobalCfgArray), names, values, nameof(globalCfg.id), globalCfg.id.ToString());
-        }
-
-        private static void HandleItemSyntheticSuit(ItemCfg itemCfg, Dictionary<ItemCfg, List<int>> syntheticSuitDic)
-        {
-            if (itemCfg.syntheticMateriarsArr.Length <= 0)
-            {
-                return;
-            }
-            if (itemCfg.itemType == ConstItemType.DRESS_UP)
-            {
-                ItemCfg materialItemCfg;
-                foreach (int[] materiars in itemCfg.syntheticMateriarsArr)
-                {
-                    int materialId = materiars[0];
-                    materialItemCfg = ItemCfgArray.Instance.GetCfg(materialId);
-                    if (materialItemCfg != null)
-                    {
-                        syntheticSuitDic.TryGetValue(materialItemCfg, out var syntheticSuitList);
-                        if (syntheticSuitList == null)
-                        {
-                            syntheticSuitList = new List<int>();
-                            syntheticSuitDic[materialItemCfg] = syntheticSuitList;
-                        }
-                        syntheticSuitList.Add(itemCfg.id);
-                    }
-                }
-            }
-        }
-
-        private static void HandleItemAndSuitTable(ItemCfg itemCfg, Dictionary<SuitCfg, List<int>> suitDic)
-        {
-            if (itemCfg.suitId <= 0)
-            {
-                return;
-            }
-            var suitCfg = SuitCfgArray.Instance.GetCfg(itemCfg.suitId);
-            if (suitCfg == null)
-            {
-                return;
-            }
-            if (itemCfg.itemType == ConstItemType.DRESS_UP)
-            {
-                suitDic.TryGetValue(suitCfg, out var partsList);
-                if (partsList == null)
-                {
-                    partsList = new List<int>();
-                    suitDic[suitCfg] = partsList;
-                }
-                partsList.Add(itemCfg.id);
-            }
-            itemCfg.isHide = suitCfg.isHide;
-        }
-
-        private static void HandleItemAndDressUpTable(ItemCfg itemCfg, ref int count)
-        {
-            // 除去初始衣装
-            if (DressUpMenuItemDataManager.defaultID.Contains(itemCfg.id) || itemCfg.isHide > 0)
-            {
-                return;
-            }
-
-            if (itemCfg.itemType == ConstItemType.DRESS_UP)
-            {
-                // 服装
-                bool isDressUp = Array.IndexOf(DressUpMenuItemDataManager.dressUpGuideSubType, itemCfg.subType) >= 0;
-                if (isDressUp)
-                {
-                    ++count;
-                    return;
-                }
-                // 饰品
-                bool isAccessories = Array.IndexOf(DressUpMenuItemDataManager.dressUpGuideAccessoriesType, itemCfg.subType) >= 0;
-                if (isAccessories)
-                {
-                    ++count;
-                    return;
-                }
-                // 特殊
-                bool isSpecial = itemCfg.subType > ConstDressUpItemType.TE_SHU;
-                if (isSpecial)
-                {
-                    ++count;
-                    return;
-                }
-            }
-        }
-
-        private static void HandleItemAndCardTable(ItemCfg itemCfg, ref int count)
-        {
-            if (itemCfg.isHide > 0)
-            {
-                return;
-            }
-            if (itemCfg.itemType == ConstItemType.CARD)
-            {
-                ++count;
-            }
-        }
-
-        private static void HandleItemAndSuitTags(ItemCfg itemCfg, Dictionary<SuitCfg, Dictionary<string, string>> suitTagsDic)
-        {
-            if (itemCfg.suitId <= 0)
-                return;
-
-            var suitCfg = SuitCfgArray.Instance.GetCfg(itemCfg.suitId);
-            if (suitCfg == null)
-                return;
-
-            if(DressUpMenuItemCfg1Array.Instance.CheckIsSceneType(itemCfg.id))
-                return;
-
-            if (itemCfg.itemType == ConstItemType.DRESS_UP)
-            {
-                for (int i = 0; i < itemCfg.tagsArr.Length; i++)
-                {
-                    suitTagsDic.TryGetValue(suitCfg, out var tags);
-                    if (tags == null)
-                    {
-                        tags = new Dictionary<string, string>();
-                        suitTagsDic[suitCfg] = tags;
-                    }
-
-                    if (!tags.ContainsKey(itemCfg.tagsArr[i][0]))
-                        tags[itemCfg.tagsArr[i][0]] = itemCfg.tagsArr[i][1];
-                    else
-                        tags[itemCfg.tagsArr[i][0]] = (Convert.ToInt32(tags[itemCfg.tagsArr[i][0]]) + Convert.ToInt32(itemCfg.tagsArr[i][1])).ToString();
-                }
-            }
-        }
-
-        private static void HandleItemApproch(ItemCfg cfg, GetApproachCall[] actions)
-        {
-            if (cfg.id == 3000001 || cfg.id == 3000002 || cfg.id == 3000003)
-            {
-                ET.Log.Debug("");
-            }
-            List<string> approachs = new List<string>();
-            foreach (GetApproachCall action in actions)
-            {
-                string tempApproach = action(cfg.id);
-                if (tempApproach != null)
-                {
-                    approachs.Add(tempApproach);
-                }
-            }
-
-            if (approachs.Count > 0)
-            {
-                string approach = string.Join(";", approachs);
-                cfg.approach = approach;
-                if (approachs.Count > 5)
-                {
-                    Debug.LogFormat("物品{0}的获取途径为 {1}", cfg.name, approach);
-                }
-            }
-            else
-            {
-                if (cfg.id < 1000000 || cfg.id >= 2000000)
-                {
-                    if ((!cfg.name.Contains("原始") && !cfg.name.Contains("默认")) || cfg.id >= 1000000)
-                    {
-                        //Debug.LogErrorFormat("物品 {0} {1} 没有获取途径", cfg.id, cfg.name);
-                    }
-                }
-            }
-        }
-
-        /// <summary>
-        /// 尝试获取服装店产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetClothingShopApproach(int itemId)
-        {
-            List<ShopCfg> dataArray = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.FU_ZHUANG_DIAN, ConstStoreSubId.FU_ZHUANG_DIAN);
-            foreach (ShopCfg cfg in dataArray)
-            {
-                if (cfg.itemId == itemId)
-                {
-                    return "FU_ZHUANG_DIAN=" + ConstStoreId.CLOTHING_STORE_ID; 
-                }
-            }
-
-            List<ShopCfg> shopCfgGallerys = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_EXCHANGE, ConstStoreSubId.STORE_EXCHANGE_GALLERY);
-            foreach (ShopCfg cfg in shopCfgGallerys)
-            {
-                if (cfg.itemId == itemId)
-                {
-                    return "FU_ZHUANG_DIAN=" + ConstStoreId.GALLERY_STORE_ID;
-                }
-            }
-
-            return null;
-        }
-        /// <summary>
-        /// 尝试获取服装分解产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetClothingDecomposeApproach(int itemId)
-        {
-            DecomposeCfgArray manager = DecomposeCfgArray.Instance;
-            DecomposeCfg[] dataArray = manager.dataArray;
-            foreach (DecomposeCfg cfg in dataArray)
-            {
-                for (int i = 0; i < cfg.itemsArr.Length; i++)
-                {
-                    if (cfg.itemsArr[i][0] == itemId)
-                    {
-                        return "FU_ZHUANG_DECOMPOSE";
-                    }
-                }
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取摘星(抽奖)产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetZhaiXingApproach(int itemId)
-        {
-            LuckyBoxCfgArray manager = LuckyBoxCfgArray.Instance;
-            LuckyBoxCfg[] dataArray = manager.dataArray;
-            if (itemId == 10090)
-            {
-                Debug.Log("");
-            }
-
-            foreach (LuckyBoxCfg cfg in dataArray)
-            {
-                for (int i = 0; i < cfg.bonusArr.Length; i++)
-                {
-                    if (itemId == cfg.bonusArr[i][0])
-                    {
-                        return "ZHAI_XING";
-                    }
-                }
-
-                int dropId = cfg.dropId;
-                if (itemId == 10014)
-                {
-                    if (dropId == 11000008)
-                    {
-                        ET.Log.Debug("");
-                    }
-                    ET.Log.Debug("");
-                }
-                int[] _dropIds = { dropId };
-
-                bool approach = CheckItemInDropOut(itemId, _dropIds);
-                if (approach)
-                {
-                    return "ZHAI_XING";
-                }
-                // }
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取飞花令产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetArenaApproach(int itemId)
-        {
-            if (itemId == ConstItemID.ARENA_CUR_COST)
-            {
-                return "ARENA";
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取天堂产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetHeavenApproach(int itemId)
-        {
-            if (itemId == ConstItemID.GET_TICKETS)
-            {
-                return "HEAVEN_SMALL_GAMW";
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取明堂产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetOpenServerFightApproach(int itemId)
-        {
-            if (itemId == ConstItemID.PAIR_CARD)
-            {
-                return "OPEN_SERVER_FIGHT";
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取元宵小游戏消耗门票的产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetYuanXiaoGameConsumeApproach(int itemId)
-        {
-            if (itemId == ConstItemID.YUANXIAO_GAME_CONSUME)
-            {
-                return "ACTIVITY_GET_YUAN_XIAO_TASK";
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取元宵小游戏奖励的产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetYuanXiaoRewardItemApproach(int itemId)
-        {
-            if (itemId == ConstItemID.YUANXIAO_REWARD)
-            {
-                return "ACTIVITY_GET_YUAN_XIAO";
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取剧情关卡产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetStoryLevelApproach(int itemId)
-        {
-            List<string> approachs = new List<string>();
-            StoryChapterCfg chapterCfg = new StoryChapterCfg();
-            StudioCfg studioCfg = new StudioCfg();
-            FieldCfg fieldCfg = new FieldCfg();
-            StoryLevelCfgArray manager = StoryLevelCfgArray.Instance;
-            StoryLevelCfg[] dataArray = manager.dataArray;
-            foreach (StoryLevelCfg cfg in dataArray)
-            {
-                if (itemId == 3000041)
-                {
-                    ET.Log.Debug("");
-                }
-                if (itemId == 3002001)
-                {
-
-                }
-                StudioCfg _studioCfg = StudioCfgArray.Instance.GetCfgsByfunId(typeof(StudioPorcelainView).Name)[StudioDataManager.Instance.PorcelainTheme - 1];
-
-                chapterCfg = StoryChapterCfgArray.Instance.GetCfg(cfg.chapterId);
-                studioCfg = StudioCfgArray.Instance.GetCfg(cfg.chapterId);
-                fieldCfg = FieldCfgArray.Instance.GetCfg(cfg.chapterId);
-                //判断是否有配在剧情、工作室、田野调查表
-                if (chapterCfg != null || studioCfg != null || fieldCfg != null)
-                {
-                    bool result = CheckItemInBonus(itemId, cfg);
-                    if (studioCfg != null)
-                    {
-                        if (cfg.type == 2 && cfg.subType == 4)
-                        {
-                            if (_studioCfg.id != cfg.chapterId)
-                            {
-                                continue;
-                            }
-                        }
-                    }
-                    if (result)
-                    {
-                        string approach = "JU_QING_GUAN_QIA=" + cfg.id;
-                        approachs.Add(approach);
-                    }
-                }
-            }
-            if (approachs.Count > 0)
-            {
-                return string.Join(";", approachs);
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 尝试获取服装合成产出途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetClothingSyntheticApproach(int itemId)
-        {
-            var itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
-            if (itemCfg == null)
-            {
-                return null;
-            }
-            if (itemCfg.itemType != ConstItemType.DRESS_UP)
-            {
-                return null;
-            }
-            if (itemCfg.suitId <= 0)
-            {
-                return null;
-            }
-            var suitCfg = SuitCfgArray.Instance.GetCfg(itemCfg.suitId);
-            if (suitCfg == null)
-            {
-                return null;
-            }
-            if (suitCfg.syntheticType <= 0)
-            {
-                return null;
-            }
-            return "FU_ZHUANG_HE_CHENG=" + suitCfg.id;
-        }
-
-        private static string GetSuitGuideApproach(int itemId)
-        {
-            SuitCfgArray manager = SuitCfgArray.Instance;
-            SuitCfg[] dataArray = manager.dataArray;
-            foreach (SuitCfg cfg in dataArray)
-            {
-                bool result = CheckItemInBonus(itemId, cfg.guideBoxBonusArr);
-                if (result)
-                {
-                    return "TAO_ZHUANG_TU_JIAN";
-                }
-            }
-            return null;
-        }
-
-        private static string GetSuitSyntheticApproach(int itemId)
-        {
-
-            var itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
-            if (itemCfg == null)
-            {
-                return null;
-            }
-            if (itemCfg.itemType != ConstItemType.DRESS_UP)
-            {
-                return null;
-            }
-            if (itemCfg.suitId <= 0)
-            {
-                return null;
-            }
-            var suitCfg = SuitCfgArray.Instance.GetCfg(itemCfg.suitId);
-            if (suitCfg == null)
-            {
-                return null;
-            }
-            if (suitCfg.syntheticType <= 0)
-            {
-                return null;
-            }
-            bool result = CheckItemInBonus(itemId, suitCfg.syntheticBoxBonusArr);
-            if (result)
-            {
-                return "TAO_ZHUANG_HE_CHENG";
-            }
-            return null;
-        }
-
-        private static bool CheckItemInBonus(int itemId, StoryLevelCfg cfg)
-        {
-            if (cfg.fightID.Length > 0)
-            {
-                StoryFightCfgArray manager = StoryFightCfgArray.Instance;
-                StoryFightCfg storyFightCfg = manager.GetCfg(cfg.fightID);
-                List<int[]> a = new List<int[]>();
-                // a.AddRange(cfg.bonusOnceArr);
-                a.AddRange(storyFightCfg.bonusBaseArr);
-                int[][] bonus = a.ToArray();
-                bool result = CheckItemInBonus(itemId, bonus);
-
-                if (storyFightCfg.id == "501")
-                {
-                    ET.Log.Debug("");
-                }
-                if (result)
-                {
-                    return true;
-                }
-                result = CheckItemInDropOut(itemId, storyFightCfg.bonusRandomArr);
-                return result;
-            }
-
-            return false;
-        }
-
-        private static bool CheckItemInBonus(int itemId, int[][] bosnu)
-        {
-            List<ItemData> aList = ItemUtil.CreateItemDataList(bosnu);
-            foreach (ItemData itemData in aList)
-            {
-                if (itemId == itemData.id)
-                {
-                    return true;
-                }
-            }
-            return false;
-        }
-        /// <summary>
-        /// 检测掉落表是否产出该物品
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <param name="dropIds"></param>
-        /// <returns></returns>
-        private static bool CheckItemInDropOut(int itemId, int[] dropIds)
-        {
-            List<ItemData> result = new List<ItemData>();
-            foreach (int dropId in dropIds)
-            {
-                DropOutCfgArray manager = DropOutCfgArray.Instance;
-                List<DropOutCfg> aList = manager.GetCfgsByid(dropId);
-                foreach (DropOutCfg dropOutCfg in aList)
-                {
-                    if (manager.GetCfgsByid(dropOutCfg.item).Count > 0)
-                    {
-                        int[] _dropIds = { dropOutCfg.item };
-                        if (CheckItemInDropOut(itemId, _dropIds))
-                        {
-                            return true;
-                        }
-                    }
-                    else
-                    {
-                        if (itemId == dropOutCfg.item)
-                        {
-                            return true;
-                        }
-                    }
-                }
-            }
-            return false;
-        }
-        /// <summary>
-        /// 检测商城-红包卡是否产出该物品
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string CheckStoreApproach(int itemId)
-        {
-            List<string> approachs = new List<string>();
-            List<ShopCfg> goldShopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_MONTH_CARD, ConstStoreSubId.STORE_MONTH_GOLD_CARD);
-            for (int i = 0; i < goldShopCfgs.Count; i++)
-            {
-                if (CheckIsHasItem(itemId, goldShopCfgs[i].itemId))
-                {
-                    approachs.Add(ConstFunctionId.STORE + "=" + ConstStoreTabId.STORE_MONTH_CARD + "=" + ConstStoreSubId.STORE_MONTH_GOLD_CARD);
-                    break;
-                }
-            }
-
-            List<ShopCfg> blackShopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_MONTH_CARD, ConstStoreSubId.STORE_MONTH_BLACK_CARD);
-            for (int i = 0; i < blackShopCfgs.Count; i++)
-            {
-                if (CheckIsHasItem(itemId, blackShopCfgs[i].itemId))
-                {
-                    approachs.Add(ConstFunctionId.STORE + "=" + ConstStoreTabId.STORE_MONTH_CARD + "=" + ConstStoreSubId.STORE_MONTH_BLACK_CARD);
-                    break;
-                }
-            }
-
-            List<ShopCfg> itemShopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_GIFT_BAG, ConstStoreSubId.STORE_GIFT_BAG_TIME_LIMIT);
-            for (int i = 0; i < itemShopCfgs.Count; i++)
-            {
-                if (CheckIsHasItem(itemId, itemShopCfgs[i].itemId))
-                {
-                    approachs.Add(ConstFunctionId.STORE + "=" + ConstStoreTabId.STORE_GIFT_BAG + "=" + ConstStoreSubId.STORE_GIFT_BAG_TIME_LIMIT);
-                    break;
-                }
-            }
-
-            List<ShopCfg> greatestShopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_GIFT_BAG, ConstStoreSubId.STORE_GIFT_BAG_GREATEST);
-            for (int i = 0; i < greatestShopCfgs.Count; i++)
-            {
-                if (CheckIsHasItem(itemId, greatestShopCfgs[i].itemId))
-                {
-                    approachs.Add(ConstFunctionId.STORE + "=" + ConstStoreTabId.STORE_GIFT_BAG + "=" + ConstStoreSubId.STORE_GIFT_BAG_GREATEST);
-                    break;
-                }
-            }
-
-            List<ShopCfg> storyActivityCfg = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_EXCHANGE, ConstStoreSubId.STORE_ACTIVITY_EXCHANGE);
-            for (int i = 0; i < storyActivityCfg.Count; i++)
-            {
-                if (CheckIsHasItem(itemId, storyActivityCfg[i].itemId))
-                {
-                    approachs.Add(ConstFunctionId.STORE + "=" + ConstStoreTabId.STORE_EXCHANGE + "=" + ConstStoreSubId.STORE_ACTIVITY_EXCHANGE);
-                    break;
-                }
-            }
-
-            List<ShopCfg> exchangetShopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.STORE_EXCHANGE, ConstStoreSubId.STORE_EXCHANGE_LEAGUE);
-            for (int i = 0; i < exchangetShopCfgs.Count; i++)
-            {
-                if (CheckIsHasItem(itemId, exchangetShopCfgs[i].itemId))
-                {
-                    approachs.Add(ConstFunctionId.STORE + "=" + ConstStoreTabId.STORE_EXCHANGE + "=" + ConstStoreSubId.STORE_EXCHANGE_LEAGUE);
-                    break;
-                }
-            }
-            if (approachs.Count > 0)
-            {
-                return string.Join(";", approachs);
-            }
-            return null;
-        }
-        private static bool CheckIsHasItem(int itemId, int checkId)
-        {
-            try
-            {
-                ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(checkId);
-                if (itemCfg == null)
-                {
-                    Log.Error($"CheckIsHasItem itemCfg is null. itemId:{itemId} checkId:{checkId}");
-                }
-                if (itemCfg.itemType == ConstItemType.USEABLE)
-                {
-                    for (int i = 0; i < itemCfg.itemsArr.Length; i++)
-                    {
-                        if (itemCfg.itemsArr[i][0] == itemId) return true;
-                    }
-                }
-                else if (checkId == itemId)
-                {
-                    return true;
-                }
-                return false;
-            }
-            catch (Exception e)
-            {
-                Log.Error($"CheckIsHasItemxxx itemCfg is null. itemId:{itemId} checkId:{checkId}");
-                throw;
-            }
-        }
-
-        /// <summary>
-        /// 检测服装升级是否产出该物品
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string CheckClothingFosterApproach(int itemId)
-        {
-            //培养
-            SuitFosterCfgArray manager = SuitFosterCfgArray.Instance;
-            SuitFosterCfg[] dataArray = manager.dataArray;
-            for (int i = 0; i < dataArray.Length; i++)
-            {
-                for (int j = 0; j < dataArray[i].rewardsArr.Length; j++)
-                {
-                    if (dataArray[i].rewardsArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.SUIT_FOSTER;
-                    }
-                }
-            }
-            //换新
-            SuitFosterListCfgArray manager1 = SuitFosterListCfgArray.Instance;
-            SuitFosterListCfg[] dataArray1 = manager1.dataArray;
-            for (int i = 0; i < dataArray1.Length; i++)
-            {
-                for (int j = 0; j < dataArray1[i].renewRewardsArr.Length; j++)
-                {
-                    if (dataArray1[i].renewRewardsArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.SUIT_FOSTER;
-                    }
-                }
-            }
-
-            return null;
-        }
-
-        /// <summary>
-        /// 检测每日任务是否产出该物品
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string CheckDailyTaskApproach(int itemId)
-        {
-            TaskActiveRewardCfgArray manager = TaskActiveRewardCfgArray.Instance;
-            List<TaskActiveRewardCfg> dataArray = manager.GetCfgsByfuncType(TaskFuncType.Daily);
-            for (int i = 0; i < dataArray.Count; i++)
-            {
-                for (int j = 0; j < dataArray[i].rewardsArr.Length; j++)
-                {
-                    if (dataArray[i].rewardsArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.DAILY_TASK;
-                    }
-                }
-            }
-
-            return null;
-        }
-        /// <summary>
-        /// 检测每周任务是否产出该物品
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string CheckWeeklyTaskApproach(int itemId)
-        {
-            TaskActiveRewardCfgArray manager = TaskActiveRewardCfgArray.Instance;
-            List<TaskActiveRewardCfg> dataArray = manager.GetCfgsByfuncType(TaskFuncType.Weekly);
-            for (int i = 0; i < dataArray.Count; i++)
-            {
-                for (int j = 0; j < dataArray[i].rewardsArr.Length; j++)
-                {
-                    if (dataArray[i].rewardsArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.WEEKLY_TASK;
-                    }
-                }
-            }
-
-            return null;
-        }
-        /// <summary>
-        /// 检测雅集福利是否产出该物品
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetLeaguePrayApproach(int itemId)
-        {
-            LeaguePrayCfg[] prayCfgs = LeaguePrayCfgArray.Instance.dataArray;
-            for (int i = 0; i < prayCfgs.Length; i++)
-            {
-                for (int j = 0; j < prayCfgs[i].bonusArr.Length; j++)
-                {
-                    if (prayCfgs[i].bonusArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.LEAGUE_PRAY;
-                    }
-                }
-                for (int j = 0; j < prayCfgs[i].bonusOnceArr.Length; j++)
-                {
-                    if (prayCfgs[i].bonusOnceArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.LEAGUE_PRAY;
-                    }
-                }
-            }
-            return null;
-        }
-        /// <summary>
-        /// 检测雅集答题是否产出该物品
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetLeagueAnswerApproach(int itemId)
-        {
-            LeagueQuestionCfg[] questionCfgs = LeagueQuestionCfgArray.Instance.dataArray;
-            for (int i = 0; i < questionCfgs.Length; i++)
-            {
-                for (int j = 0; j < questionCfgs[i].bonusArr.Length; j++)
-                {
-                    if (questionCfgs[i].bonusArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.LEAGUE_ANSWER;
-                    }
-                }
-            }
-
-            LeagueQuestionBonusCfg[] questionBonusCfgs = LeagueQuestionBonusCfgArray.Instance.dataArray;
-            for (int i = 0; i < questionBonusCfgs.Length; i++)
-            {
-                for (int j = 0; j < questionBonusCfgs[i].bonusArr.Length; j++)
-                {
-                    if (questionBonusCfgs[i].bonusArr[j][0] == itemId)
-                    {
-                        return ConstFunctionId.LEAGUE_ANSWER;
-                    }
-                }
-            }
-            return null;
-        }
-
-        /// <summary>
-        /// 检测技能书合成途径
-        /// </summary>
-        /// <param name="itemId"></param>
-        /// <returns></returns>
-        private static string GetSkillBookSyntheticApproach(int itemId)
-        {
-            var itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
-            if (itemCfg.itemType == ConstItemType.ITEM && itemCfg.subType == 1 && itemCfg.rarity >= 3)
-            {
-                ItemExchangeCfg itemExchange = ItemExchangeCfgArray.Instance.GetCfg(itemId);
-                if(itemExchange != null)
-                {
-                    return ConstFunctionId.SKILLBOOK;
-                }
-            }
-            return null;
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/ItemApproachScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 7b7c4da772203de48acc7787947ff377
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 69
GameClient/Assets/Editor/Excel/Scanner/LeagueScanner.cs

@@ -1,69 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using GFGGame;
-using UnityEngine;
-
-namespace GFGEditor
-{
-    public class LeagueScanner
-    {
-        private static Dictionary<int, int> skilCountDic = new Dictionary<int, int>();
-        private static Dictionary<int, int> layerCountDic = new Dictionary<int, int>();
-        private static string[] names = { "选茶", "备器", "择水", "取火", "候汤", "习茶" };
-        public static void StartScan()
-        {
-            skilCountDic.Clear();
-            layerCountDic.Clear();
-
-            int typeValue = 1;
-            List<LeagueSkillCfg> skillCfgs = LeagueSkillCfgArray.Instance.GetCfgsBytype(typeValue);
-            while (skillCfgs != null && skillCfgs.Count > 0)
-            {
-                skilCountDic[typeValue] = skillCfgs.Count;
-                layerCountDic[typeValue] = 0;
-
-                int layer = 1;
-                List<LeagueSkillCfg> skillLayerCfgs = LeagueSkillCfgArray.Instance.GetCfgsBytypeAndlayer(typeValue, layer);
-
-                while (skillLayerCfgs != null && skillLayerCfgs.Count > 0)
-                {
-                    layerCountDic[typeValue] = layer;
-                    layer++;
-                    skillLayerCfgs = LeagueSkillCfgArray.Instance.GetCfgsBytypeAndlayer(typeValue, layer);
-                }
-                typeValue++;
-                skillCfgs = LeagueSkillCfgArray.Instance.GetCfgsBytype(typeValue);
-            }
-
-
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                ICollection<int> keys = layerCountDic.Keys;
-                foreach (int key in skilCountDic.Keys)
-                {
-                    string type = key.ToString();
-                    string layerCount = layerCountDic[key].ToString();
-                    string skillCount = skilCountDic[key].ToString();
-                    var names = new string[] { "layerCount", "skillCount" };
-                    var values = new string[] { layerCount, skillCount };
-                    SQLiteHelper.Instance.UpdateValues(nameof(LeagueSkillCountCfgArray), names, values, "type", key.ToString());
-                    // SQLiteHelper.Instance.InsertValues(nameof(LeagueSkillCountCfgArray), values);
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-
-        }
-
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/LeagueScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 4481442a4adabe44b845614b4239ed2f
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 313
GameClient/Assets/Editor/Excel/Scanner/ShopScanner.cs

@@ -1,313 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using GFGGame;
-using UnityEngine;
-
-namespace GFGEditor
-{
-    public class ShopScanner
-    {
-        // private static string[] _shopItemType = new string[] { "推荐", "发型", "连衣裙", "内搭", "上衣", "下装", "外套", "袜子", "鞋子", "饰品" };
-        private static string[] _shopItemType = new string[] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };
-        //[背景,人物,道具,边框,滤镜]
-        private static string[] _galleryShopItemType = new string[] { "0", "1", "2", "3", "4" };
-
-        public static void StartScan()
-        {
-            WriteClothingShop();
-            // WriteCJShop();
-            // WriteCJAShop();
-            WriteGalleryShop();
-        }
-
-        public static void WriteClothingShop()
-        {
-
-            Dictionary<int, string> _typeIndexDic = new Dictionary<int, string>();
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                List<ShopCfg> clothingShopCfg = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(ConstStoreTabId.FU_ZHUANG_DIAN, ConstStoreSubId.FU_ZHUANG_DIAN);
-                for (int i = 0; i < clothingShopCfg.Count; i++)
-                {
-                    int count;
-                    if (Array.IndexOf(_shopItemType, clothingShopCfg[i].typeIndex) >= 0)
-                    {
-                        count = Array.IndexOf(_shopItemType, clothingShopCfg[i].typeIndex);
-                    }
-                    else
-                    {
-                        ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(clothingShopCfg[i].itemId);
-                        string itemType = ItemTypeCfgArray.Instance.GetCfg(itemCfg.subType).type.ToString();
-
-                        if (Array.IndexOf(_shopItemType, itemType) >= 0)
-                        {
-                            count = Array.IndexOf(_shopItemType, itemType);
-                        }
-                        else
-                        {
-                            count = _shopItemType.Length - 1;
-                        }
-                    }
-                    _typeIndexDic.Add(clothingShopCfg[i].id, count.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                ICollection keys = _typeIndexDic.Keys;
-                foreach (int key in keys)
-                {
-                    var names = new string[] { "typeIndex" };
-                    var values = new string[] { "" + _typeIndexDic[key] };
-                    SQLiteHelper.Instance.UpdateValues(nameof(ShopCfgArray), names, values, "id", key.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-
-        }
-
-        public static void WriteCJShop()
-        {
-            // Dictionary<int, string> _typeIndexDic = new Dictionary<int, string>();
-            // SQLiteHelper.Instance.OpenConnection();
-            // try
-            // {
-            //     string typeIndex = "";
-            //     int itemId;
-            //     int id;
-            //     var reader = SQLiteHelper.Instance.ReadFullTable("ShopCfgCJArray");
-            //     while (reader.Read())
-            //     {
-            //         typeIndex = reader["_typeIndex"].ToString();
-            //         itemId = int.Parse(reader["_itemId"].ToString());
-            //         id = int.Parse(reader["_id"].ToString());
-
-            //         int count;
-            //         if (Array.IndexOf(_shopItemType, typeIndex) >= 0)
-            //         {
-            //             count = Array.IndexOf(_shopItemType, typeIndex);
-            //         }
-            //         else
-            //         {
-            //             ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
-            //             string itemType = ItemTypeCfgArray.Instance.GetCfg(itemCfg.subType).type.ToString();
-
-            //             if (Array.IndexOf(_shopItemType, itemType) >= 0)
-            //             {
-            //                 count = Array.IndexOf(_shopItemType, itemType);
-            //             }
-            //             else
-            //             {
-            //                 count = _shopItemType.Length - 1;
-            //             }
-            //         }
-            //         _typeIndexDic.Add(id, count.ToString());
-            //     }
-            // }
-            // catch (System.Exception e)
-            // {
-            //     ET.Log.Error(e);
-            // }
-            // finally
-            // {
-            //     SQLiteHelper.Instance.CloseConnection();
-            // }
-
-
-            // SQLiteHelper.Instance.OpenConnection();
-            // try
-            // {
-            //     ICollection keys = _typeIndexDic.Keys;
-            //     foreach (int key in keys)
-            //     {
-
-            //         var names = new string[] { "typeIndex" };
-            //         var values = new string[] { "" + _typeIndexDic[key] };
-            //         SQLiteHelper.Instance.UpdateValues(nameof(ShopCfgCJArray), names, values, "id", key.ToString());
-            //     }
-            // }
-            // catch (Exception e)
-            // {
-            //     ET.Log.Error(e.ToString());
-            // }
-            // finally
-            // {
-            //     SQLiteHelper.Instance.CloseConnection();
-            // }
-
-        }
-
-        public static void WriteCJAShop()
-        {
-            // Dictionary<int, string> _typeIndexDic = new Dictionary<int, string>();
-
-            // SQLiteHelper.Instance.OpenConnection();
-            // try
-            // {
-            //     string typeIndex = "";
-            //     int itemId;
-            //     int id;
-            //     var reader = SQLiteHelper.Instance.ReadFullTable("ShopCfgCJAArray");
-            //     while (reader.Read())
-            //     {
-            //         typeIndex = reader["_typeIndex"].ToString();
-            //         itemId = int.Parse(reader["_itemId"].ToString());
-            //         id = int.Parse(reader["_id"].ToString());
-
-            //         int count;
-            //         if (Array.IndexOf(_shopItemType, typeIndex) >= 0)
-            //         {
-            //             count = Array.IndexOf(_shopItemType, typeIndex);
-            //         }
-            //         else
-            //         {
-            //             ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
-            //             string itemType = ItemTypeCfgArray.Instance.GetCfg(itemCfg.subType).type.ToString();
-
-            //             if (Array.IndexOf(_shopItemType, itemType) >= 0)
-            //             {
-            //                 count = Array.IndexOf(_shopItemType, itemType);
-            //             }
-            //             else
-            //             {
-            //                 count = _shopItemType.Length - 1;
-            //             }
-            //         }
-            //         _typeIndexDic.Add(id, count.ToString());
-            //     }
-            // }
-            // catch (System.Exception e)
-            // {
-            //     ET.Log.Error(e);
-            // }
-            // finally
-            // {
-            //     SQLiteHelper.Instance.CloseConnection();
-            // }
-
-
-            // SQLiteHelper.Instance.OpenConnection();
-            // try
-            // {
-            //     ICollection keys = _typeIndexDic.Keys;
-            //     foreach (int key in keys)
-            //     {
-
-            //         var names = new string[] { "typeIndex" };
-            //         var values = new string[] { "" + _typeIndexDic[key] };
-            //         SQLiteHelper.Instance.UpdateValues(nameof(ShopCfgCJAArray), names, values, "id", key.ToString());
-            //     }
-            // }
-            // catch (Exception e)
-            // {
-            //     ET.Log.Error(e.ToString());
-            // }
-            // finally
-            // {
-            //     SQLiteHelper.Instance.CloseConnection();
-            // }
-        }
-
-
-        public static void WriteGalleryShop()
-        {
-            // Dictionary<int, string> _typeIndexDic = new Dictionary<int, string>();
-
-            // SQLiteHelper.Instance.OpenConnection();
-            // try
-            // {
-            //     string typeIndex = "";
-            //     int itemId;
-            //     int id;
-            //     var reader = SQLiteHelper.Instance.ReadFullTable("ShopCfgGalleryArray");
-            //     while (reader.Read())
-            //     {
-            //         typeIndex = reader["_typeIndex"].ToString();
-            //         itemId = int.Parse(reader["_itemId"].ToString());
-            //         id = int.Parse(reader["_id"].ToString());
-
-            //         int count = 2;
-
-            //         ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
-
-            //         if (itemCfg.itemType == ConstItemType.DRESS_UP)
-            //         {
-            //             if (itemCfg.subType == ConstDressUpItemType.BEI_JING)
-            //             {
-            //                 count = 0;//背景
-            //             }
-            //             else
-            //             {
-            //                 count = 2;//道具
-            //             }
-            //         }
-            //         else if (itemCfg.itemType == ConstItemType.PHOTOGRAPH)
-            //         {
-            //             if (itemCfg.subType == ConstItemSubType.PHOTOGRAPH_NPC)
-            //             {
-            //                 count = 1;//人物
-            //             }
-            //             else if (itemCfg.subType == ConstItemSubType.PHOTOGRAPH_BOREDR)
-            //             {
-            //                 count = 3;//npc
-            //             }
-            //             else if (itemCfg.subType == ConstItemSubType.PHOTOGRAPH_EFFECT)
-            //             {
-            //                 count = 4;//滤镜
-            //             }
-            //         }
-
-            //         _typeIndexDic.Add(id, count.ToString());
-            //     }
-            // }
-            // catch (System.Exception e)
-            // {
-            //     ET.Log.Error(e);
-            // }
-            // finally
-            // {
-            //     SQLiteHelper.Instance.CloseConnection();
-            // }
-
-
-            // SQLiteHelper.Instance.OpenConnection();
-            // try
-            // {
-            //     ICollection keys = _typeIndexDic.Keys;
-            //     foreach (int key in keys)
-            //     {
-
-            //         var names = new string[] { "typeIndex" };
-            //         var values = new string[] { "" + _typeIndexDic[key] };
-            //         SQLiteHelper.Instance.UpdateValues(nameof(ShopCfgGalleryArray), names, values, "id", key.ToString());
-            //     }
-            // }
-            // catch (Exception e)
-            // {
-            //     ET.Log.Error(e.ToString());
-            // }
-            // finally
-            // {
-            //     SQLiteHelper.Instance.CloseConnection();
-            // }
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/ShopScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 0d7a22cc9398507498d650818b15cf10
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 45
GameClient/Assets/Editor/Excel/Scanner/SuitGuideScanner.cs

@@ -1,45 +0,0 @@
-using System;
-using System.Collections.Generic;
-using GFGGame;
-
-namespace GFGEditor
-{
-    public class SuitGuideScanner
-    {
-        private static List<int> suitIds = new List<int>();
-
-        public static void StartScan()
-        {
-            suitIds.Clear();
-            var dataArray = SuitGuideMenuCfgArray.Instance.dataArray;
-
-            string strs = "";
-            for (int i = 0; i < dataArray.Length; i++)
-            {
-                SuitGuideMenuCfg cfg = dataArray[i];
-                string str = string.Format(";{0}", cfg.suitIds);
-                strs += str;
-            }
-
-            SQLiteHelper.Instance.OpenConnection();
-            try
-            {
-                foreach (var cfg in dataArray)
-                {
-                    //SuitGuideMenuCfg cfg = dataArray[0];
-                    var names = new string[] { nameof(cfg.suitIds) };
-                    var values = new string[] { strs };
-                    SQLiteHelper.Instance.UpdateValues(nameof(SuitGuideMenuCfgArray), names, values, nameof(cfg.id), cfg.id.ToString());
-                }
-            }
-            catch (Exception e)
-            {
-                ET.Log.Error(e.ToString());
-            }
-            finally
-            {
-                SQLiteHelper.Instance.CloseConnection();
-            }
-        }
-    }
-}

+ 0 - 11
GameClient/Assets/Editor/Excel/Scanner/SuitGuideScanner.cs.meta

@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 89bc618d7ad4a5841b3467a9054e26b4
-MonoImporter:
-  externalObjects: {}
-  serializedVersion: 2
-  defaultReferences: []
-  executionOrder: 0
-  icon: {instanceID: 0}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 8
GameClient/Assets/Editor/Excel/Template.meta

@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 270a60e87c85d814bb9a2fd98f8fe8e0
-folderAsset: yes
-DefaultImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 23
GameClient/Assets/Editor/Excel/Template/Config.txt

@@ -1,23 +0,0 @@
-#if UNITY_2017_1_OR_NEWER
-    using Mono.Data.Sqlite;
-#else
-	using Microsoft.Data.Sqlite;
-#endif
-
-namespace GFGGame
-{
-	public partial class {CfgName} : ICfg
-	{
-{variable declaration}
-
-		public void setData(SqliteDataReader reader)
-		{
-{variable assignment}
-
-#if UNITY_2017_1_OR_NEWER
-            LogUtil.LogEditor("InitConfig:" + nameof({CfgName}));
-#endif
-		}
-		
-	}
-}

+ 0 - 25
GameClient/Assets/Editor/Excel/Template/ConfigArray.txt

@@ -1,25 +0,0 @@
-using System.Collections.Generic;
-using System.Reflection;
-
-namespace GFGGame
-{
-    public partial class {CfgArrayName} : SingletonBase<{CfgArrayName}>
-    {
-{Init}
-
-{Dispose}
-
-
-        private void HandleCfg({CfgName} cfg)
-        {
-{SingleHandleBlock}
-        }
-
-
-{singleFunction}
-
-{groupFunction}
-
-{allFunction}
-    }
-}

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/ConfigArray.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 2cb6e8453db8beb48a55fb87cfb14b9d
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 4
GameClient/Assets/Editor/Excel/Template/Dispose.txt

@@ -1,4 +0,0 @@
-		public void Dispose()
-		{
-			{StrDispose}
-		}

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/Dispose.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 43d41ac30cf568740b75844160546443
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/DisposeAllCfgsCache.txt

@@ -1,7 +0,0 @@
-namespace GFGGame
-{
-    public partial class DisposeAllCfgsCache : SingletonBase<DisposeAllCfgsCache>
-    {
-{FunctionDispose}
-    }
-}

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/DisposeAllCfgsCache.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 140aba55e8700624e9689126e9a7505a
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 21
GameClient/Assets/Editor/Excel/Template/FunctionAll.txt

@@ -1,21 +0,0 @@
-
-        private void HandleCfgInAll({CfgName} cfg)
-        {
-            HandleCfg(cfg);
-{FunctionAllBlock}
-        }
-
-{editorConditionStart}
-        private {CfgName}[] _allDatas;
-        public {CfgName}[] dataArray
-        {
-            get
-            {
-                if(_allDatas == null)
-                {
-                    _allDatas = ConfigUtil.GetAllCfgs<{CfgName}>("{CfgArrayName}", HandleCfgInAll);
-                }
-                return _allDatas;
-            }
-        }
-{editorConditionEnd}

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionAll.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: c4f9c947e7718d24a9cfef47bd8f2f7c
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 17
GameClient/Assets/Editor/Excel/Template/FunctionAllGroupBlock.txt

@@ -1,17 +0,0 @@
-            
-            List<string> {cfgsGroupDicName}List = new List<string>();
-            string[] {cfgsGroupDicName}KeyGroup = {groupKey}.Split('_');
-            for (int i = 0; i < {cfgsGroupDicName}KeyGroup.Length; i++)
-            {
-                FieldInfo info = cfg.GetType().GetField({cfgsGroupDicName}KeyGroup[i]);
-                {cfgsGroupDicName}List.Add(info.GetValue(cfg).ToString());
-            }
-
-            string {cfgsGroupDicName}Key = string.Join("_", {cfgsGroupDicName}List);
-            {cfgsGroupDicName}.TryGetValue({cfgsGroupDicName}Key, out var {list});
-            if({list} == null)
-            {
-                {list} = new List<{CfgName}>();
-                {cfgsGroupDicName}.Add({cfgsGroupDicName}Key, {list});
-            }
-            {list}.Add(cfg);

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionAllGroupBlock.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 87478a61dade0694cb90eddf97cf1dfb
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 11
GameClient/Assets/Editor/Excel/Template/FunctionAllKeyBlock.txt

@@ -1,11 +0,0 @@
-            
-            List<string> {cfgsDicName}List = new List<string>();
-            string[] {cfgsDicName}KeyGroup = {combinedKey}.Split('_');
-            for (int i = 0; i < {cfgsDicName}KeyGroup.Length; i++)
-            {
-                FieldInfo info = cfg.GetType().GetField({cfgsDicName}KeyGroup[i]);
-                {cfgsDicName}List.Add(info.GetValue(cfg).ToString());
-            }
-
-            string {cfgsDicName}Key = string.Join("_", {cfgsDicName}List);            
-            {cfgsDicName}[{cfgsDicName}Key] = cfg;

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionAllKeyBlock.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: d66c674e5b9f3fe42a1ae1dced895cb3
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 2
GameClient/Assets/Editor/Excel/Template/FunctionAllSingleBlock.txt

@@ -1,2 +0,0 @@
-            FieldInfo {cfgsDicName}info = cfg.GetType().GetField({combinedKey});
-            {cfgsDicName}[{cfgsDicName}info.GetValue(cfg).ToString()] = cfg;

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionAllSingleBlock.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: bae242068f7c8aa4c959e3f400b0c851
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 4
GameClient/Assets/Editor/Excel/Template/FunctionDispose.txt

@@ -1,4 +0,0 @@
-        public void DisposeAll()
-        {
-			{StrCfgArrayDispose}
-        }

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionDispose.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 837fe2a751846a2429f73cd667dbf304
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 9
GameClient/Assets/Editor/Excel/Template/FunctionGroup.txt

@@ -1,9 +0,0 @@
-
-        private Dictionary<string, List<{CfgName}>> {cfgsGroupDicName} = new Dictionary<string, List<{CfgName}>>();
-        public List<{CfgName}> {FunctionName}({params})
-        {
-            var colNames = new string[] { {colNames}};
-            var colValues = new string[] { {colValues} };
-            return ConfigUtil.GetCfgs<{CfgName}>("{CfgArrayName}", colNames, colValues, {cfgsGroupDicName}, HandleCfg);
-        }
-        

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionGroup.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 23eea2587dbf5c249b141a177bf129a5
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 4
GameClient/Assets/Editor/Excel/Template/FunctionInit.txt

@@ -1,4 +0,0 @@
-        public void InitAll()
-        {
-	        {StrCfgArrayInit}
-        }

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionInit.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 40d762977efb06642950b31e87200eb3
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 10
GameClient/Assets/Editor/Excel/Template/FunctionSingle.txt

@@ -1,10 +0,0 @@
-        private Dictionary<string, {CfgName}> {cfgsDicName} = new Dictionary<string, {CfgName}>();
-        public {CfgName} {FunctionName}({params})
-        { 
-            var colNames = new string[] { {colNames}};
-            var colValues = new string[] { {colValues} };
-            return ConfigUtil.GetCfg<{CfgName}>("{CfgArrayName}", colNames, colValues, {cfgsDicName});
-        }
-
-
-        

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/FunctionSingle.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: af0a19f90d1e3d24099bc840e66e75c7
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 4
GameClient/Assets/Editor/Excel/Template/Init.txt

@@ -1,4 +0,0 @@
-		public void Init ()
-		{ 
-			{CfgName}[] dataArray =this.dataArray;
-		}

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/Init.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: b08b89f4f801d914a8cd0ad234bb4448
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/InitAllCfgsCache.txt

@@ -1,7 +0,0 @@
-namespace GFGGame
-{
-    public partial class InitAllCfgsCache : SingletonBase<InitAllCfgsCache>
-    {
-{FunctionInit}
-    }
-}

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/InitAllCfgsCache.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: ca08be5ced251ce468ff9be0411031b4
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 1
GameClient/Assets/Editor/Excel/Template/StrCfgArrayDisposeBlock.txt

@@ -1 +0,0 @@
-			{configArrayName}.Instance.Dispose();

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/StrCfgArrayDisposeBlock.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 8c9570e58f00665409c08ddcef1ebcb6
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 0 - 1
GameClient/Assets/Editor/Excel/Template/StrCfgArrayInitBlock.txt

@@ -1 +0,0 @@
-			{configArrayName}.Instance.Init();

+ 0 - 7
GameClient/Assets/Editor/Excel/Template/StrCfgArrayInitBlock.txt.meta

@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: c2d607553dd0051459c04ea7a11c1dbb
-TextScriptImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: 

+ 23 - 14
GameClient/Assets/Game/HotUpdate/Assets/PreDownloadManager.cs

@@ -1,5 +1,6 @@
 using GFGGame.Launcher;
 using System.Collections.Generic;
+using cfg.GfgCfg;
 using YooAsset;
 
 namespace GFGGame
@@ -35,24 +36,28 @@ namespace GFGGame
         /// <param name="includeOptional">是否包含可选部件</param>
         public void PreDownloadSuitRes(int suitId, ResType resType, int[] excludeType, bool includeOptional)
         {
-            SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(suitId);
+            SuitCfg suitCfg = CommonDataManager.Tables.TblSuitCfg.GetOrDefault(suitId);
+
             if (suitCfg == null)
             {
                 return;
             }
+
             //找到要穿的散件
-            List<int> targetItemList = DressUpUtil.GetSuitItems(suitId, resType != ResType.Sprite, excludeType, includeOptional, false);
+            List<int> targetItemList =
+                DressUpUtil.GetSuitItems(suitId, resType != ResType.Sprite, excludeType, includeOptional, false);
             foreach (var itemId in targetItemList)
             {
                 PreDownloadDressUpRes(itemId, resType);
             }
+
             if (resType != ResType.Sprite)
             {
-                if (!string.IsNullOrEmpty(suitCfg.aniRes))
+                if (!string.IsNullOrEmpty(suitCfg.AniRes))
                 {
-                    string assetPath = ResPathUtil.GetDressUpAnimationPath(suitCfg.aniRes);
+                    string assetPath = ResPathUtil.GetDressUpAnimationPath(suitCfg.AniRes);
                     PreDownloadManager.Instance.TryAdd(assetPath);
-                    assetPath = ResPathUtil.GetDressUpEffectPath(suitCfg.aniRes, true);
+                    assetPath = ResPathUtil.GetDressUpEffectPath(suitCfg.AniRes, true);
                     PreDownloadManager.Instance.TryAdd(assetPath);
                 }
             }
@@ -60,7 +65,8 @@ namespace GFGGame
 
         public void PreDownloadDressUpRes(int itemId, ResType resType = ResType.Sprite)
         {
-            ItemCfg dressUpCfg = ItemCfgArray.Instance.GetCfg(itemId);
+            ItemCfg dressUpCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(itemId);
+
             string assetPath;
             if (resType != ResType.Animation)
             {
@@ -77,6 +83,7 @@ namespace GFGGame
                 assetPath = ResPathUtil.GetDressUpLayerEffectResPath(dressUpCfg, 3, false);
                 PreDownloadManager.Instance.TryAdd(assetPath);
             }
+
             if (resType != ResType.Sprite)
             {
                 assetPath = ResPathUtil.GetDressUpLayerAnimationResPath(dressUpCfg, 1);
@@ -96,29 +103,31 @@ namespace GFGGame
 
         public void PreDownloadCardAnimationRes(int itemId)
         {
-            ItemCfg cardCfg = ItemCfgArray.Instance.GetCfg(itemId);
-            string assetPath = ResPathUtil.GetCardAnimationPath(cardCfg.res);
+            ItemCfg cardCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(itemId);
+
+            string assetPath = ResPathUtil.GetCardAnimationPath(cardCfg.Res);
             PreDownloadManager.Instance.TryAdd(assetPath);
         }
 
         private void Update()
         {
-            if(downloaderOperation != null)
+            if (downloaderOperation != null)
             {
-                if(downloaderOperation.IsDone)
+                if (downloaderOperation.IsDone)
                 {
-                    foreach(var t in locationsLoading)
+                    foreach (var t in locationsLoading)
                     {
                         LoadManager.Instance.SetResDownloaded(t);
                     }
+
                     downloaderOperation = null;
                     locationsLoading = null;
                 }
             }
 
-            if(downloaderOperation == null && waitList.Count > 0)
+            if (downloaderOperation == null && waitList.Count > 0)
             {
-                waitList.Reverse();//看了yooasset源码,疑似他是从后往前加载,这里翻转一下
+                waitList.Reverse(); //看了yooasset源码,疑似他是从后往前加载,这里翻转一下
                 locationsLoading = waitList.ToArray();
                 downloaderOperation = YooAssets.CreateBundleDownloader(locationsLoading, 1, 3);
                 downloaderOperation.BeginDownload();
@@ -126,4 +135,4 @@ namespace GFGGame
             }
         }
     }
-}
+}

+ 9 - 7
GameClient/Assets/Game/HotUpdate/Controller/BonusController.cs

@@ -6,9 +6,9 @@ namespace GFGGame
 {
     public class BonusController
     {
-        public static void TryShowBonusList(int[][] bonusInfos, Action onSuccess = null)
+        public static void TryShowBonusList(System.Collections.Generic.List<ItemParamProto> bonusInfos, Action onSuccess = null)
         {
-            if (bonusInfos != null && bonusInfos.Length > 0)
+            if (bonusInfos != null && bonusInfos.Count > 0)
             {
                 List<ItemData> bonusList = ItemUtil.CreateItemDataList(bonusInfos);
                 CheckUpdateAutoUseItem(bonusList);
@@ -16,6 +16,7 @@ namespace GFGGame
                 ViewManager.Show<RewardView>(new object[] { bonusList, onSuccess });
             }
         }
+
         public static void TryShowBonusList(List<ItemData> bonusList, Action onSuccess = null)
         {
             if (bonusList != null && bonusList.Count > 0)
@@ -33,15 +34,16 @@ namespace GFGGame
             for (var i = count - 1; i >= 0; i--)
             {
                 var t = bonusList[i];
-                var itemCfg = ItemCfgArray.Instance.GetCfg(t.id);
-                if (itemCfg != null && itemCfg.itemType == ConstItemType.USEABLE &&
-                    (itemCfg.subType == ConstItemSubType.USEABLE_AUTO))
+                var itemCfg = CommonDataManager.Tables.TblItemCfg.GetOrDefault(t.id);
+                if (itemCfg != null && itemCfg.ItemType == ConstItemType.USEABLE &&
+                    (itemCfg.SubType == ConstItemSubType.USEABLE_AUTO))
                 {
-                    itemDatasFromAutoUsedItem.AddRange(ItemUtil.CreateItemDataList(itemCfg.itemsArr, t.num));
+                    itemDatasFromAutoUsedItem.AddRange(ItemUtil.CreateItemDataList(itemCfg.Items.ToGfgGameItemParam(), t.num));
                     bonusList.RemoveAt(i);
                 }
             }
+
             bonusList.AddRange(itemDatasFromAutoUsedItem);
         }
     }
-}
+}

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Controller/ErrorCodeController.cs

@@ -62,9 +62,9 @@ namespace GFGGame
                         return false;
                     }
                 default:
-                    if (ErrorCodeCfgArray.Instance.GetCfg(errorCode) != null)
+                    if ( CommonDataManager.Tables.TblErrorCodeCfg.GetOrDefault(errorCode) != null)
                     {
-                        PromptController.Instance.ShowFloatTextPrompt(ErrorCodeCfgArray.Instance.GetCfg(errorCode).tips);
+                        PromptController.Instance.ShowFloatTextPrompt(CommonDataManager.Tables.TblErrorCodeCfg.GetOrDefault(errorCode).Tips);
                         ET.Log.Debug("errorCode" + errorCode.ToString());
                     }
                     else

+ 1 - 3
GameClient/Assets/Game/HotUpdate/Controller/GameController.cs

@@ -80,11 +80,9 @@ namespace GFGGame
                 Debug.LogError("调试6" + e);
                 throw;
             }
-
         }
 
 
-
         public static bool CheckLoginCache(bool doLogin)
         {
             string account = PlayerPrefs.GetString(GameConst.ACCOUNT_LAST_LOGIN_KEY, null);
@@ -310,7 +308,7 @@ namespace GFGGame
 
             int filingChapterId = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STUDIO_FILING_CHAPTERID);
             StudioDataManager.Instance.npcFilingChapterId =
-                filingChapterId <= 0 ? StudioDataManager.Instance.FilingDatas[0].id : filingChapterId;
+                filingChapterId <= 0 ? StudioDataManager.Instance.FilingDatas[0].Id : filingChapterId;
             StudioDataManager.Instance.filingChapterId = StudioDataManager.Instance.npcFilingChapterId;
             GameGlobal.skipCheckOpen = StorageDataManager.Instance.GetStorageValue(ConstStorageId.SKIP_CHECK_OPEN) <= 0
                 ? false

+ 34 - 33
GameClient/Assets/Game/HotUpdate/Controller/GuideController.cs

@@ -2,6 +2,7 @@ using FairyGUI;
 using UI.DressUp;
 using UI.Main;
 using System.Collections.Generic;
+using cfg.GfgCfg;
 using UnityEngine;
 using UI.ClothingSynthetic;
 using ET;
@@ -15,9 +16,9 @@ namespace GFGGame
         {
             if (!GameGlobal.isEnterGame) return false;//未进入游戏
             bool isAllGuideFinish = false;
-            for (int i = 0; i < GuideCfgArray.Instance.dataArray.Length; i++)
+            for (int i = 0; i < CommonDataManager.Tables.TblGuideCfg.DataList.Count ; i++)
             {
-                if (GuideDataManager.IsGuideFinish(GuideCfgArray.Instance.dataArray[i].key) <= 0)
+                if (GuideDataManager.IsGuideFinish(CommonDataManager.Tables.TblGuideCfg.DataList[i].GuideKey) <= 0)
                 {
                     isAllGuideFinish = false;
                     break;
@@ -33,15 +34,15 @@ namespace GFGGame
         /// <returns></returns>
         public static string CheckHasRoleLvGuideOpen()
         {
-            GuideCfg[] guideCfgs = GuideCfgArray.Instance.dataArray;
+            List<GuideCfg> guideCfgs =  CommonDataManager.Tables.TblGuideCfg.DataList;
 
-            for (int i = 0; i < guideCfgs.Length; i++)
+            for (int i = 0; i < guideCfgs.Count; i++)
             {
-                if (guideCfgs[i].roleLv <= 0) continue;
-                bool isFinishCurId = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + guideCfgs[i].id) > 0;
-                if (!isFinishCurId && guideCfgs[i].roleLv <= RoleDataManager.lvl)
+                if (guideCfgs[i].RoleLv <= 0) continue;
+                bool isFinishCurId = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + guideCfgs[i].Id) > 0;
+                if (!isFinishCurId && guideCfgs[i].RoleLv <= RoleDataManager.lvl)
                 {
-                    return guideCfgs[i].viewName;
+                    return guideCfgs[i].ViewName;
                 }
             }
 
@@ -54,8 +55,8 @@ namespace GFGGame
         /// <returns></returns>
         private static bool CheckSpecialGuideOpen(GuideCfg cfg)
         {
-            if (cfg.special <= 0) return false;
-            if (cfg.guideKey == ConstGuideId.SUIT_LIST_VIEW)
+            if (cfg.Special <= 0) return false;
+            if (cfg.GuideKey == ConstGuideId.SUIT_LIST_VIEW)
             {
                 return FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(ClothingListView).Name, false) && SuitUtil.GetClothingFosterHasSuitId();
             }
@@ -69,9 +70,9 @@ namespace GFGGame
             {
                 return false;
             }
-            GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
-            if (cfg == null || GuideDataManager.currentGuideId != 0 && GuideDataManager.currentGuideId != cfg.id) return false;
-            bool isPass = InstanceZonesDataManager.CheckLevelPass(cfg.storyLevelId);
+            GuideCfg cfg = CommonDataManager.Tables.TblGuideCfg.GetOrDefault(guideKey);
+            if (cfg == null || GuideDataManager.currentGuideId != 0 && GuideDataManager.currentGuideId != cfg.Id) return false;
+            bool isPass = InstanceZonesDataManager.CheckLevelPass(cfg.StoryLevelId);
             // if (guideKey == ConstGuideId.ARENA_OPEN)
             // {
             //     return false;//临时屏蔽
@@ -81,29 +82,29 @@ namespace GFGGame
                 return false;//竞技场结算中或已通关指定开启关卡,不引导
             }
             GRoot.inst.touchable = false;
-            bool isStoryLevelGuide = cfg.storyLevelId > 0;
-            bool isFinishCurId = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + cfg.id) > 0;//当前引导未完成
+            bool isStoryLevelGuide = cfg.StoryLevelId > 0;
+            bool isFinishCurId = StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + cfg.Id) > 0;//当前引导未完成
 
-            bool isFinishPriorId = cfg.priorId <= 0 || StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + cfg.priorId) > 0;//前置引导已完成
-            bool isFinishCurIndex = GuideDataManager.IsGuideIndexFinish(cfg.id, index) == true;//当前index未完成
-            bool isFinishPriorIndex = !checkPriorIndex || checkPriorIndex && GuideDataManager.IsGuideIndexFinish(cfg.id, index - 1) == true;//前置index已完成
+            bool isFinishPriorId = cfg.PriorId <= 0 || StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_GUIDE + cfg.PriorId) > 0;//前置引导已完成
+            bool isFinishCurIndex = GuideDataManager.IsGuideIndexFinish(cfg.Id, index) == true;//当前index未完成
+            bool isFinishPriorIndex = !checkPriorIndex || checkPriorIndex && GuideDataManager.IsGuideIndexFinish(cfg.Id, index - 1) == true;//前置index已完成
             // ET.Log.Debug("storyLevelId:" + cfg.storyLevelId + "    time:" + TimeHelper.ClientNowSeconds());
-            bool isCfgChapterOpen = MainStoryDataManager.CheckLevelUnlock(cfg.storyLevelId, false);//引导配置关卡已开启
+            bool isCfgChapterOpen = MainStoryDataManager.CheckLevelUnlock(cfg.StoryLevelId, false);//引导配置关卡已开启
             bool isCfgChapter = MainStoryDataManager.currentLevelCfgId == 0 
                 || otherChapterID
-                || MainStoryDataManager.currentLevelCfgId == cfg.storyLevelId;//无选择(进入游戏时无选择)或当前所选择为配置关卡
+                || MainStoryDataManager.currentLevelCfgId == cfg.StoryLevelId;//无选择(进入游戏时无选择)或当前所选择为配置关卡
 
             if (isStoryLevelGuide && isPass && !isFinishCurId)
             {
-                GuideDataManager.currentGuideId = cfg.id;
+                GuideDataManager.currentGuideId = cfg.Id;
                 TryCompleteGuide(guideKey);
                 GRoot.inst.touchable = true;
                 return false;
             }
-            bool isRoleLvGuide = cfg.roleLv > 0;
-            bool iscurRoleLv = RoleDataManager.lvl >= cfg.roleLv;
+            bool isRoleLvGuide = cfg.RoleLv > 0;
+            bool iscurRoleLv = RoleDataManager.lvl >= cfg.RoleLv;
 
-            bool isSpecial = cfg.special > 0; //特殊条件开启的引导
+            bool isSpecial = cfg.Special > 0; //特殊条件开启的引导
             bool specialOpen = CheckSpecialGuideOpen(cfg);
 
             bool noneType = !isStoryLevelGuide && !isFinishCurId && isFinishPriorId && !isFinishCurIndex && isFinishPriorIndex && !isRoleLvGuide && !isSpecial;
@@ -112,10 +113,10 @@ namespace GFGGame
             bool specialType = isSpecial && !isFinishCurId && isFinishPriorId && !isFinishCurIndex && isFinishPriorIndex && specialOpen;
             if (storyType || roleLvType || specialType || noneType)
             {
-                GuideDataManager.currentGuideId = cfg.id;
+                GuideDataManager.currentGuideId = cfg.Id;
                 GuideDataManager.currentGuideIdIndex = index;
 
-                GuideDataManager.SetGuideIndex(cfg.id, index);
+                GuideDataManager.SetGuideIndex(cfg.Id, index);
                 if (listIndex >= 0)
                 {
 
@@ -145,7 +146,7 @@ namespace GFGGame
                 {
                     for (int i = 1; i < index; i++)
                     {
-                        GuideDataManager.TryCompleteGuideIndex(cfg.id, i, false);
+                        GuideDataManager.TryCompleteGuideIndex(cfg.Id, i, false);
                     }
                 }
                 return true;
@@ -167,10 +168,10 @@ namespace GFGGame
         }
         public static bool TryCompleteGuideIndex(string guideKey, int index)
         {
-            GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
+            GuideCfg cfg = CommonDataManager.Tables.TblGuideCfg.GetOrDefault(guideKey);
             if (cfg == null) return false;
             HideGuide();
-            if (GuideDataManager.TryCompleteGuideIndex(cfg.id, index))
+            if (GuideDataManager.TryCompleteGuideIndex(cfg.Id, index))
             {
                 if (targetList != null && targetList.scrollPane != null)
                 {
@@ -187,16 +188,16 @@ namespace GFGGame
         public static async void TryCompleteGuide(string guideKey, int count)
         {
 
-            GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
+            GuideCfg cfg = CommonDataManager.Tables.TblGuideCfg.GetOrDefault(guideKey);
             if (cfg == null) return;
-            if (!GuideDataManager.CheckAllIndexFinish(cfg.id, count)) return;
+            if (!GuideDataManager.CheckAllIndexFinish(cfg.Id, count)) return;
             TryCompleteGuide(guideKey);
 
         }
         private static async void TryCompleteGuide(string guideKey)
         {
-            GuideCfg cfg = GuideCfgArray.Instance.GetCfg(guideKey);
-            bool result = await GuideDataManager.TryCompleteGuide(cfg.id);
+            GuideCfg cfg = CommonDataManager.Tables.TblGuideCfg.GetOrDefault(guideKey);
+            bool result = await GuideDataManager.TryCompleteGuide(cfg.Id);
             if (result)
             {
                 if (targetList != null && targetList.scrollPane != null)

+ 4 - 2
GameClient/Assets/Game/HotUpdate/Controller/LoginController.cs

@@ -154,9 +154,11 @@ namespace GFGGame
                 NoticeInfo noticeInfo = NoticeDataManager.Instance.LastNoticeInfo;
                 // Debug.Log("noticeTime:" + noticeInfo.time + "  currentTime:" + (TimeInfo.Instance.ServerNow() / 1000));
 
-                long noticeTime = TimeUtil.GetDayTimeBySec(noticeInfo.time, GlobalCfgArray.globalCfg.refreshTime);
+                long noticeTime =
+                    TimeUtil.GetDayTimeBySec(noticeInfo.time, CommonDataManager.Tables.TblGlobalCfg.RefreshTime);
                 long currentTime =
-                    TimeUtil.GetDayTimeBySec(TimeInfo.Instance.ServerNow(), GlobalCfgArray.globalCfg.refreshTime);
+                    TimeUtil.GetDayTimeBySec(TimeInfo.Instance.ServerNow(),
+                        CommonDataManager.Tables.TblGlobalCfg.RefreshTime);
                 // Debug.Log("noticeTime:" + noticeTime + "  currentTime:" + currentTime);
                 if ((currentTime - noticeTime) / 1000 / TimeUtil.SECOND_PER_DAY < 3)
                 {

+ 15 - 14
GameClient/Assets/Game/HotUpdate/Controller/MainController.cs

@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using cfg.GfgCfg;
 using ET;
 using UnityEngine;
 
@@ -12,49 +13,49 @@ namespace GFGGame
             LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.CHUN_ZHONG_LOU, 1);
             if (isOpen) return isOpen;
             isOpen = true;
-            List<StoryChapterCfg> _chapterCfgs = StoryChapterCfgArray.Instance.GetCfgsBysubType(0);
+            List<StoryChapterCfg> _chapterCfgs = CommonDataManager.Tables.TblStoryChapterCfg.GetGroup1BySubType(0);
             for (int i = 0; i < _chapterCfgs.Count; i++)
             {
                 StoryChapterCfg chapterCfg = _chapterCfgs[i];
-                if (i == _chapterCfgs.Count - 1 && MainStoryDataManager.CheckChapterUnlock(chapterCfg.id))
+                if (i == _chapterCfgs.Count - 1 && MainStoryDataManager.CheckChapterUnlock(chapterCfg.Id))
                 {
-                    if (StoryController.CheckSuitGot(_chapterCfgs[i-1].suitId))
+                    if (StoryController.CheckSuitGot(_chapterCfgs[i-1].SuitId))
                     {
-                        MainStoryDataManager.currentChapterCfgId = chapterCfg.id;
-                        ViewManager.Show<StoryChapterView>(new object[] { chapterCfg.id, 0 });
+                        MainStoryDataManager.currentChapterCfgId = chapterCfg.Id;
+                        ViewManager.Show<StoryChapterView>(new object[] { chapterCfg.Id, 0 });
                         isOpen = false;
                         return isOpen;
                     }
                     else
                     {
-                        ViewManager.Show<StoryChapterListView>(new object[] { 0, Mathf.Max(0, chapterCfg.order - 1) });
+                        ViewManager.Show<StoryChapterListView>(new object[] { 0, Mathf.Max(0, chapterCfg.Order - 1) });
                         isOpen = false;
                         return isOpen;
                     }
                 }
-                else if (!MainStoryDataManager.CheckChapterUnlock(chapterCfg.id))
+                else if (!MainStoryDataManager.CheckChapterUnlock(chapterCfg.Id))
                 {
                     StoryChapterCfg chapterTowCfg = _chapterCfgs[Mathf.Max(0, i - 1)];
                     StoryChapterCfg chaptersuitCfg = _chapterCfgs[Mathf.Max(0, i - 2)];
-                    var list = StoryLevelCfgArray.Instance.GetCfgsBytypeAndsubTypeAndchapterId(chapterTowCfg.type, chapterTowCfg.subType, chapterTowCfg.id);
+                    var list = StoryLevelConfigManager.GetConfigs(chapterTowCfg.Type, chapterTowCfg.SubType, chapterTowCfg.Id);
                     StoryLevelCfg lastLevelCfg = list[list.Count - 1];
                     //这里是当下一章没解锁,但是上一章的最后一关已经通过了
-                    if (lastLevelCfg != null && InstanceZonesDataManager.CheckLevelPass(lastLevelCfg.id))
+                    if (lastLevelCfg != null && InstanceZonesDataManager.CheckLevelPass(lastLevelCfg.Id))
                     {
-                        ViewManager.Show<StoryChapterListView>(new object[] { 0, Mathf.Max(0, chapterCfg.order - 1) });
+                        ViewManager.Show<StoryChapterListView>(new object[] { 0, Mathf.Max(0, chapterCfg.Order - 1) });
                         isOpen = false;
                         return isOpen;
                     }
-                    if (StoryController.CheckSuitGot(chaptersuitCfg.suitId))
+                    if (StoryController.CheckSuitGot(chaptersuitCfg.SuitId))
                     {
-                        MainStoryDataManager.currentChapterCfgId = chapterCfg.id - 1;
-                        ViewManager.Show<StoryChapterView>(new object[] { chapterCfg.id - 1, 0 });
+                        MainStoryDataManager.currentChapterCfgId = chapterCfg.Id - 1;
+                        ViewManager.Show<StoryChapterView>(new object[] { chapterCfg.Id - 1, 0 });
                         isOpen = false;
                         return isOpen;
                     }
                     else
                     {
-                        ViewManager.Show<StoryChapterListView>(new object[] { 0, Mathf.Max(0, chapterCfg.order - 1) });
+                        ViewManager.Show<StoryChapterListView>(new object[] { 0, Mathf.Max(0, chapterCfg.Order - 1) });
                         isOpen = false;
                         return isOpen;
                     }

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Data/BattlePassTaskDataManager.cs

@@ -158,11 +158,11 @@ namespace GFGGame
         }
 
         //获取升级奖励
-        public List<ItemParam> GetUpLevelReward(int upLevel)
+        public List<ItemParamProto> GetUpLevelReward(int upLevel)
         {
             var battlePassLevel = GetBattlePassLevel();
             var seasonId = GetSeasonId();
-            List<ItemParam> rs = null;
+            List<ItemParamProto> rs = null;
             for (var i = upLevel; i > 0; i--)
             {
                 var passLevel = battlePassLevel + i;

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/Cache/StoryBonusDataCache.cs

@@ -47,7 +47,7 @@ namespace GFGGame
         public static List<ItemData> GetChapterBonusList(int chapterID, int index)
         {
             StoryChapterCfg chapterCfg = CommonDataManager.Tables.TblStoryChapterCfg.GetOrDefault(chapterID);
-            List<ItemParam> bonus = chapterCfg.Bonus1.ToGfgGameItemParam();
+            List<ItemParamProto> bonus = chapterCfg.Bonus1.ToGfgGameItemParam();
             if (index == 1)
             {
                 bonus = chapterCfg.Bonus2.ToGfgGameItemParam();

+ 2 - 1
GameClient/Assets/Game/HotUpdate/Data/DecomposeDataManager.cs

@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using cfg;
 using cfg.GfgCfg;
 
 namespace GFGGame
@@ -33,7 +34,7 @@ namespace GFGGame
             }
 
             //套装拥有的时候需要让材料重新加进列表
-            IList<ItemParam> syntheticMateriarsArr = ItemDataManager.GetItemSyntheticSuitArr(itemId);
+            IList<ItemParamProto> syntheticMateriarsArr = ItemDataManager.GetItemSyntheticSuitArr(itemId);
             if (syntheticMateriarsArr.Count > 0) {
                 foreach (var materiars in syntheticMateriarsArr)
                 {

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/ItemDataManager.cs

@@ -151,7 +151,7 @@ namespace GFGGame
             return itemCfg.ItemType;
         }
 
-        public static List<ItemParam> GetItemSyntheticSuitArr(int itemId)
+        public static List<ItemParamProto> GetItemSyntheticSuitArr(int itemId)
         {
             _dataDic.TryGetValue(itemId, out var value);
             if (value != null && value.syntheticMateriarsArr != null && value.syntheticMateriarsArr.Count > 0)

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/TaskDataManager.cs

@@ -270,7 +270,7 @@ namespace GFGGame
             TaskType2TaskIdListDic.Clear();
         }
 
-        public List<ItemParam> GetReward(TaskCfg taskCfg)
+        public List<ItemParamProto> GetReward(TaskCfg taskCfg)
         {
             var activityId = taskCfg.ActivityId;
             if (activityId == 0) return taskCfg.Rewards.ToGfgGameItemParam();

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/VO/ItemData.cs

@@ -11,7 +11,7 @@ namespace GFGGame
         public int itemType;
         public int subType;
         public int rarity;
-        public List<ItemParam> syntheticMateriarsArr;
+        public List<ItemParamProto> syntheticMateriarsArr;
         public int[] param2Arr;
 
         private Dictionary<int, int> AttributesDic = new Dictionary<int, int>();

+ 62 - 86
GameClient/Assets/Game/HotUpdate/FairyGUI/GFGUIPackage.cs

@@ -9,15 +9,9 @@ namespace GFGGame
     public class GFGUIPackage
     {
         private static Dictionary<string, UIPackage> _packages = new Dictionary<string, UIPackage>();
-
-        private static Dictionary<string, List<AssetOperationHandle>> assetHandleCacheDic =
-            new Dictionary<string, List<AssetOperationHandle>>();
-
+        private static Dictionary<string, List<AssetOperationHandle>> assetHandleCacheDic = new Dictionary<string, List<AssetOperationHandle>>();
         private static Dictionary<string, int> _assetCount = new Dictionary<string, int>();
 
-        /// <summary>
-        /// 同步加载 FairyGUI 包
-        /// </summary>
         public static void AddPackage(string descFilePath)
         {
             _assetCount.TryGetValue(descFilePath, out var count);
@@ -26,18 +20,26 @@ namespace GFGGame
                 _assetCount[descFilePath] = count + 1;
                 return;
             }
-
             _assetCount.Add(descFilePath, count + 1);
             var handle = YooAssets.LoadAssetSync<TextAsset>($"{descFilePath}_fui.bytes");
             TextAsset textAsset = handle.AssetObject as TextAsset;
             CacheAssetHandle(descFilePath, handle);
-            var uiPackage = UIPackage.AddPackage(textAsset.bytes, descFilePath, LoadResourceSync);
+            //同步
+            var uiPackage = UIPackage.AddPackage(textAsset.bytes, descFilePath, (string name, string extension, System.Type type, out DestroyMethod destroyMethod) =>
+            {
+                string location = name + extension;
+                destroyMethod = DestroyMethod.None; //注意:这里一定要设置为None
+                if (!YooAssets.CheckResExist(location))
+                {
+                    return null;
+                }
+                var handle = YooAssets.LoadAssetSync(location, type);
+                CacheAssetHandle(descFilePath, handle);
+                return handle.AssetObject;
+            });
             _packages.Add(descFilePath, uiPackage);
         }
 
-        /// <summary>
-        /// 异步加载 FairyGUI 包(支持 await)
-        /// </summary>
         public static async Task AddPackageAsync(string descFilePath)
         {
             _assetCount.TryGetValue(descFilePath, out var count);
@@ -46,113 +48,87 @@ namespace GFGGame
                 _assetCount[descFilePath] = count + 1;
                 return;
             }
-
             _assetCount.Add(descFilePath, count + 1);
-
-            // 1. 异步加载描述文件
             var handle = YooAssets.LoadAssetAsync<TextAsset>($"{descFilePath}_fui.bytes");
             await handle.Task;
-            if (handle.Status != EOperationStatus.Succeed)
-                throw new System.Exception($"Failed to load package: {descFilePath}");
-
-            // 2. 添加包
             TextAsset textAsset = handle.AssetObject as TextAsset;
             CacheAssetHandle(descFilePath, handle);
-            var uiPackage = UIPackage.AddPackage(textAsset.bytes, descFilePath, LoadResourceAsync);
-            _packages.Add(descFilePath, uiPackage);
-
-            CheckRemovePackage(descFilePath);
-        }
-
-        /// <summary>
-        /// 同步加载资源回调
-        /// </summary>
-        private static object LoadResourceSync(string name, string extension, System.Type type,
-            out DestroyMethod destroyMethod)
-        {
-            destroyMethod = DestroyMethod.None;
-            string location = name + extension;
-            if (!YooAssets.CheckResExist(location))
-                return null;
-
-            var handle = YooAssets.LoadAssetSync(location, type);
-            CacheAssetHandle(name, handle);
-            return handle.AssetObject;
-        }
-
-        /// <summary>
-        /// 异步加载资源回调
-        /// </summary>
-        private static void LoadResourceAsync(string name, string extension, System.Type type, PackageItem item)
-        {
-            string location = name + extension;
-            if (!YooAssets.CheckResExist(location))
-                return;
-
-            AssetOperationHandle handle = YooAssets.LoadAssetAsync(location, type);
-            CacheAssetHandle(name, handle);
-            handle.Completed += (op) =>
+            var uiPackage = UIPackage.AddPackage(textAsset.bytes, descFilePath, (string name, string extension, System.Type type, PackageItem item) =>
             {
-                if (op.AssetObject == null) return;
-
-                // 处理带 Alpha 通道的纹理
-                if (op.AssetObject is Texture tex)
+                string location = name + extension;
+                if (!YooAssets.CheckResExist(location))
                 {
-                    string alphaLocation = name + "!a" + extension;
-                    if (YooAssets.CheckResExist(alphaLocation))
+                    return;
+                }
+                AssetOperationHandle handle = YooAssets.LoadAssetAsync(location, type);
+                CacheAssetHandle(descFilePath, handle);
+                handle.Completed += (handle) =>
+                {
+                    if (handle.AssetObject == null) return;
+                    Texture tex = handle.AssetObject as Texture;
+                    if (tex != null)
                     {
-                        var alphaHandle = YooAssets.LoadAssetAsync(alphaLocation, type);
-                        CacheAssetHandle(name, alphaHandle);
-                        alphaHandle.Completed += (alphaOp) =>
+                        string location = name + "!a" + extension;
+                        if (YooAssets.CheckResExist(location))
                         {
-                            if (alphaOp.AssetObject is Texture alphaTex)
-                                item.owner.SetItemAsset(item, tex, alphaTex, DestroyMethod.None);
-                        };
-                        return;
+                            AssetOperationHandle handleAlpha = YooAssets.LoadAssetAsync(location, type);
+                            CacheAssetHandle(descFilePath, handleAlpha);
+                            handleAlpha.Completed += (handle1) =>
+                            {
+                                if (handle1.AssetObject == null) return;
+                                Texture alphaTex = handle1.AssetObject as Texture;
+                                item.owner.SetItemAsset(item, tex, alphaTex, DestroyMethod.None);//注意:这里一定要设置为None
+                            };
+                            return;
+                        }
                     }
-                }
-
-                item.owner.SetItemAsset(item, op.AssetObject, null, DestroyMethod.None);
-            };
+                    item.owner.SetItemAsset(item, handle.AssetObject, null, DestroyMethod.None);//注意:这里一定要设置为None
+                };
+            });
+            _packages.Add(descFilePath, uiPackage);
+            CheckRemovePackage(descFilePath);
         }
 
+
         public static void ReleasePackage(string descFilePath)
         {
-            if (_assetCount.TryGetValue(descFilePath, out var count) && count > 0)
+            _assetCount.TryGetValue(descFilePath, out var count);
+            if (count > 0)
             {
-                _assetCount[descFilePath] = count - 1;
+                count--;
+                _assetCount[descFilePath] = count;
                 CheckRemovePackage(descFilePath);
             }
         }
 
         private static void CheckRemovePackage(string descFilePath)
         {
-            if (_assetCount.TryGetValue(descFilePath, out var count) && count <= 0)
+            _assetCount.TryGetValue(descFilePath, out var count);
+            if (count > 0) return;
+            _packages.TryGetValue(descFilePath, out var package);
+            if (package == null) return;
+            _assetCount.Remove(descFilePath);
+            _packages.Remove(descFilePath);
+            UIPackage.RemovePackage(package.name);
+
+            if (assetHandleCacheDic.TryGetValue(descFilePath, out var list))
             {
-                if (_packages.TryGetValue(descFilePath, out var package))
+                foreach (var asset in list)
                 {
-                    UIPackage.RemovePackage(package.name);
-                    _packages.Remove(descFilePath);
-                    _assetCount.Remove(descFilePath);
-                }
-
-                if (assetHandleCacheDic.TryGetValue(descFilePath, out var handles))
-                {
-                    foreach (var handle in handles)
-                        handle.Release();
-                    handles.Clear();
+                    asset.Release();
                 }
+                list.Clear();
             }
         }
 
         private static void CacheAssetHandle(string key, AssetOperationHandle handle)
         {
-            if (!assetHandleCacheDic.TryGetValue(key, out var list))
+            List<AssetOperationHandle> list = null;
+            if (!assetHandleCacheDic.TryGetValue(key, out list))
             {
                 list = new List<AssetOperationHandle>();
                 assetHandleCacheDic.Add(key, list);
             }
-
             list.Add(handle);
         }
     }

+ 4 - 4
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityThemeLuckyBox/UI_ActivityThemeLuckyBoxUI.cs

@@ -13,13 +13,13 @@ namespace UI.ActivityThemeLuckyBox
         public GGraph m_bgEffectHolder;
         public GButton m_btnBack;
         public UI_Button1 m_btnChapter;
+        public UI_Button1 m_btnLuckyBox;
         public UI_Button1 m_btnTask;
         public UI_Button1 m_btnShop;
         public GTextField m_timeDesc;
         public GTextField m_txtTime;
         public GTextField m_txtTime_4;
         public GButton m_btnLuckyBox_old;
-        public UI_Button1 m_btnLuckyBox;
         public GImage m_mask;
         public GLoader m_icon_5;
         public GTextField m_txtTime_5;
@@ -79,13 +79,13 @@ namespace UI.ActivityThemeLuckyBox
             m_bgEffectHolder = (GGraph)comp.GetChild("bgEffectHolder");
             m_btnBack = (GButton)comp.GetChild("btnBack");
             m_btnChapter = (UI_Button1)UI_Button1.Create(comp.GetChild("btnChapter"));
+            m_btnLuckyBox = (UI_Button1)UI_Button1.Create(comp.GetChild("btnLuckyBox"));
             m_btnTask = (UI_Button1)UI_Button1.Create(comp.GetChild("btnTask"));
             m_btnShop = (UI_Button1)UI_Button1.Create(comp.GetChild("btnShop"));
             m_timeDesc = (GTextField)comp.GetChild("timeDesc");
             m_txtTime = (GTextField)comp.GetChild("txtTime");
             m_txtTime_4 = (GTextField)comp.GetChild("txtTime_4");
             m_btnLuckyBox_old = (GButton)comp.GetChild("btnLuckyBox_old");
-            m_btnLuckyBox = (UI_Button1)UI_Button1.Create(comp.GetChild("btnLuckyBox"));
             m_mask = (GImage)comp.GetChild("mask");
             m_icon_5 = (GLoader)comp.GetChild("icon_5");
             m_txtTime_5 = (GTextField)comp.GetChild("txtTime_5");
@@ -103,6 +103,8 @@ namespace UI.ActivityThemeLuckyBox
             m_btnBack = null;
             m_btnChapter.Dispose();
             m_btnChapter = null;
+            m_btnLuckyBox.Dispose();
+            m_btnLuckyBox = null;
             m_btnTask.Dispose();
             m_btnTask = null;
             m_btnShop.Dispose();
@@ -111,8 +113,6 @@ namespace UI.ActivityThemeLuckyBox
             m_txtTime = null;
             m_txtTime_4 = null;
             m_btnLuckyBox_old = null;
-            m_btnLuckyBox.Dispose();
-            m_btnLuckyBox = null;
             m_mask = null;
             m_icon_5 = null;
             m_txtTime_5 = null;

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: c659c245cb9d4fe0a186c644a8e10e1a
+timeCreated: 1744193666

+ 101 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_BagEquipmentUI.cs

@@ -0,0 +1,101 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.BagEquipment
+{
+    public partial class UI_BagEquipmentUI
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public Controller m_c2;
+        public GLoader m_Top_img;
+        public GList m_Left_Equipment_List;
+        public GTextField m_test01;
+        public GList m_Right_Equipment_List;
+        public GLoader m_icon;
+        public GList m_listTravel;
+        public GList m_typeList;
+        public GButton m_btnback;
+        public GList m_list;
+        public const string URL = "ui://aksf0ct7t49x0";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "BagEquipmentUI";
+        private static UI_BagEquipmentUI _proxy;
+
+        public static UI_BagEquipmentUI Create(GObject gObject = null)
+        {
+            var ui = new UI_BagEquipmentUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_BagEquipmentUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_BagEquipmentUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_c1 = comp.GetController("c1");
+            m_c2 = comp.GetController("c2");
+            m_Top_img = (GLoader)comp.GetChild("Top_img");
+            m_Left_Equipment_List = (GList)comp.GetChild("Left_Equipment_List");
+            m_test01 = (GTextField)comp.GetChild("test01");
+            m_Right_Equipment_List = (GList)comp.GetChild("Right_Equipment_List");
+            m_icon = (GLoader)comp.GetChild("icon");
+            m_listTravel = (GList)comp.GetChild("listTravel");
+            m_typeList = (GList)comp.GetChild("typeList");
+            m_btnback = (GButton)comp.GetChild("btnback");
+            m_list = (GList)comp.GetChild("list");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_c2 = null;
+            m_Top_img = null;
+            m_Left_Equipment_List = null;
+            m_test01 = null;
+            m_Right_Equipment_List = null;
+            m_icon = null;
+            m_listTravel = null;
+            m_typeList = null;
+            m_btnback = null;
+            m_list = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_BagEquipmentUI.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 0beafb17e2d946d0b687d0f1d2259232
+timeCreated: 1744193687

+ 13 - 13
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/OpenServerActivity/UI_BtnHeaven.cs → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button1.cs

@@ -2,20 +2,20 @@
 
 using FairyGUI;
 
-namespace UI.OpenServerActivity
+namespace UI.BagEquipment
 {
-    public partial class UI_BtnHeaven
+    public partial class UI_Button1
     {
         public GButton target;
-        public Transition m_t0;
-        public const string URL = "ui://b8ha2mnsdedga";
-        public const string PACKAGE_NAME = "OpenServerActivity";
-        public const string RES_NAME = "BtnHeaven";
-        private static UI_BtnHeaven _proxy;
+        public Controller m_c1;
+        public const string URL = "ui://aksf0ct7ccdwa";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "Button1";
+        private static UI_Button1 _proxy;
 
-        public static UI_BtnHeaven Create(GObject gObject = null)
+        public static UI_Button1 Create(GObject gObject = null)
         {
-            var ui = new UI_BtnHeaven();
+            var ui = new UI_Button1();
             if(gObject == null)
             	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
             else
@@ -24,11 +24,11 @@ namespace UI.OpenServerActivity
             return ui;
         }
 
-        public static UI_BtnHeaven Proxy(GObject gObject = null)
+        public static UI_Button1 Proxy(GObject gObject = null)
         {
             if(_proxy == null)
             {
-                _proxy = new UI_BtnHeaven();
+                _proxy = new UI_Button1();
             }
             var ui = _proxy;
             if(gObject == null)
@@ -55,11 +55,11 @@ namespace UI.OpenServerActivity
 
         private void Init(GComponent comp)
         {
-            m_t0 = comp.GetTransition("t0");
+            m_c1 = comp.GetController("c1");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_t0 = null;
+            m_c1 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 1
GameClient/Assets/Editor/Excel/ExcelChecker.cs.meta → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button1.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 31f83ea4133ea214aaf9096ea63e09fb
+guid: 0cd36b80956d9ef498f3e53527dcad53
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 13 - 13
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/OpenServerActivity/UI_BtnMingTong.cs → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button2.cs

@@ -2,20 +2,20 @@
 
 using FairyGUI;
 
-namespace UI.OpenServerActivity
+namespace UI.BagEquipment
 {
-    public partial class UI_BtnMingTong
+    public partial class UI_Button2
     {
         public GButton target;
-        public Transition m_t0;
-        public const string URL = "ui://b8ha2mnsdedgb";
-        public const string PACKAGE_NAME = "OpenServerActivity";
-        public const string RES_NAME = "BtnMingTong";
-        private static UI_BtnMingTong _proxy;
+        public Controller m_c1;
+        public const string URL = "ui://aksf0ct7wf0uv";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "Button2";
+        private static UI_Button2 _proxy;
 
-        public static UI_BtnMingTong Create(GObject gObject = null)
+        public static UI_Button2 Create(GObject gObject = null)
         {
-            var ui = new UI_BtnMingTong();
+            var ui = new UI_Button2();
             if(gObject == null)
             	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
             else
@@ -24,11 +24,11 @@ namespace UI.OpenServerActivity
             return ui;
         }
 
-        public static UI_BtnMingTong Proxy(GObject gObject = null)
+        public static UI_Button2 Proxy(GObject gObject = null)
         {
             if(_proxy == null)
             {
-                _proxy = new UI_BtnMingTong();
+                _proxy = new UI_Button2();
             }
             var ui = _proxy;
             if(gObject == null)
@@ -55,11 +55,11 @@ namespace UI.OpenServerActivity
 
         private void Init(GComponent comp)
         {
-            m_t0 = comp.GetTransition("t0");
+            m_c1 = comp.GetController("c1");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_t0 = null;
+            m_c1 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 1
GameClient/Assets/Editor/Excel/CodeTemplateFactory.cs.meta → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button2.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: eb8ecadd0197a5b4186c014f4948b92f
+guid: 559c5e9772babd34fb329f3c2fa91bad
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 13 - 13
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/OpenServerActivity/UI_BtnNineZhouPool.cs → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button3.cs

@@ -2,20 +2,20 @@
 
 using FairyGUI;
 
-namespace UI.OpenServerActivity
+namespace UI.BagEquipment
 {
-    public partial class UI_BtnNineZhouPool
+    public partial class UI_Button3
     {
         public GButton target;
-        public Transition m_t0;
-        public const string URL = "ui://b8ha2mnsdedg9";
-        public const string PACKAGE_NAME = "OpenServerActivity";
-        public const string RES_NAME = "BtnNineZhouPool";
-        private static UI_BtnNineZhouPool _proxy;
+        public Controller m_c1;
+        public const string URL = "ui://aksf0ct7wf0uy";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "Button3";
+        private static UI_Button3 _proxy;
 
-        public static UI_BtnNineZhouPool Create(GObject gObject = null)
+        public static UI_Button3 Create(GObject gObject = null)
         {
-            var ui = new UI_BtnNineZhouPool();
+            var ui = new UI_Button3();
             if(gObject == null)
             	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
             else
@@ -24,11 +24,11 @@ namespace UI.OpenServerActivity
             return ui;
         }
 
-        public static UI_BtnNineZhouPool Proxy(GObject gObject = null)
+        public static UI_Button3 Proxy(GObject gObject = null)
         {
             if(_proxy == null)
             {
-                _proxy = new UI_BtnNineZhouPool();
+                _proxy = new UI_Button3();
             }
             var ui = _proxy;
             if(gObject == null)
@@ -55,11 +55,11 @@ namespace UI.OpenServerActivity
 
         private void Init(GComponent comp)
         {
-            m_t0 = comp.GetTransition("t0");
+            m_c1 = comp.GetController("c1");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_t0 = null;
+            m_c1 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 1
GameClient/Assets/Editor/Excel/CodeBuilder.cs.meta → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button3.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: cc3f7af48383484459d2e42a09d28fc5
+guid: 1d2eca52507927247ac2871f5f72251f
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 13 - 13
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/OpenServerActivity/UI_BtnAnswerTianmen.cs → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button6.cs

@@ -2,20 +2,20 @@
 
 using FairyGUI;
 
-namespace UI.OpenServerActivity
+namespace UI.BagEquipment
 {
-    public partial class UI_BtnAnswerTianmen
+    public partial class UI_Button6
     {
         public GButton target;
-        public Transition m_t0;
-        public const string URL = "ui://b8ha2mnsdedgc";
-        public const string PACKAGE_NAME = "OpenServerActivity";
-        public const string RES_NAME = "BtnAnswerTianmen";
-        private static UI_BtnAnswerTianmen _proxy;
+        public GTextField m_title1;
+        public const string URL = "ui://aksf0ct7ccdw3";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "Button6";
+        private static UI_Button6 _proxy;
 
-        public static UI_BtnAnswerTianmen Create(GObject gObject = null)
+        public static UI_Button6 Create(GObject gObject = null)
         {
-            var ui = new UI_BtnAnswerTianmen();
+            var ui = new UI_Button6();
             if(gObject == null)
             	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
             else
@@ -24,11 +24,11 @@ namespace UI.OpenServerActivity
             return ui;
         }
 
-        public static UI_BtnAnswerTianmen Proxy(GObject gObject = null)
+        public static UI_Button6 Proxy(GObject gObject = null)
         {
             if(_proxy == null)
             {
-                _proxy = new UI_BtnAnswerTianmen();
+                _proxy = new UI_Button6();
             }
             var ui = _proxy;
             if(gObject == null)
@@ -55,11 +55,11 @@ namespace UI.OpenServerActivity
 
         private void Init(GComponent comp)
         {
-            m_t0 = comp.GetTransition("t0");
+            m_title1 = (GTextField)comp.GetChild("title1");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_t0 = null;
+            m_title1 = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 1
GameClient/Assets/Editor/Excel/ExcelConfig.cs.meta → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_Button6.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 974e093f01383394bb466dcce15f633d
+guid: e9ef7d6b6ea2cce4fa1e8c773a8a07f3
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 74 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComIcon.cs

@@ -0,0 +1,74 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.BagEquipment
+{
+    public partial class UI_ComIcon
+    {
+        public GComponent target;
+        public GLoader m_loaBg;
+        public GLoader m_loaIcon;
+        public const string URL = "ui://aksf0ct7ccdwl";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "ComIcon";
+        private static UI_ComIcon _proxy;
+
+        public static UI_ComIcon Create(GObject gObject = null)
+        {
+            var ui = new UI_ComIcon();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ComIcon Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComIcon();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_loaBg = (GLoader)comp.GetChild("loaBg");
+            m_loaIcon = (GLoader)comp.GetChild("loaIcon");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_loaBg = null;
+            m_loaIcon = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComIcon.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 8e29945355f3ef94291b5a8bd540852a
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 89 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComPhotoPostcard.cs

@@ -0,0 +1,89 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.BagEquipment
+{
+    public partial class UI_ComPhotoPostcard
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public UI_ComTravel m_comTravel;
+        public UI_Button1 m_btnLock;
+        public UI_Button2 m_btnUp;
+        public GImage m_imgSelectMask;
+        public GGroup m_imgSelect;
+        public const string URL = "ui://aksf0ct7ccdw5";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "ComPhotoPostcard";
+        private static UI_ComPhotoPostcard _proxy;
+
+        public static UI_ComPhotoPostcard Create(GObject gObject = null)
+        {
+            var ui = new UI_ComPhotoPostcard();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ComPhotoPostcard Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComPhotoPostcard();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_c1 = comp.GetController("c1");
+            m_comTravel = (UI_ComTravel)UI_ComTravel.Create(comp.GetChild("comTravel"));
+            m_btnLock = (UI_Button1)UI_Button1.Create(comp.GetChild("btnLock"));
+            m_btnUp = (UI_Button2)UI_Button2.Create(comp.GetChild("btnUp"));
+            m_imgSelectMask = (GImage)comp.GetChild("imgSelectMask");
+            m_imgSelect = (GGroup)comp.GetChild("imgSelect");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_comTravel.Dispose();
+            m_comTravel = null;
+            m_btnLock.Dispose();
+            m_btnLock = null;
+            m_btnUp.Dispose();
+            m_btnUp = null;
+            m_imgSelectMask = null;
+            m_imgSelect = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComPhotoPostcard.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: fa407b86dbb57e94ca8750cf6a5fb518
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 74 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComTravel.cs

@@ -0,0 +1,74 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.BagEquipment
+{
+    public partial class UI_ComTravel
+    {
+        public GComponent target;
+        public GLoader m_loaBg;
+        public GLoader m_loaRole;
+        public const string URL = "ui://aksf0ct7ccdw7";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "ComTravel";
+        private static UI_ComTravel _proxy;
+
+        public static UI_ComTravel Create(GObject gObject = null)
+        {
+            var ui = new UI_ComTravel();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ComTravel Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComTravel();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_loaBg = (GLoader)comp.GetChild("loaBg");
+            m_loaRole = (GLoader)comp.GetChild("loaRole");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_loaBg = null;
+            m_loaRole = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ComTravel.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 6de611aba7ad2b54bbce5032f47587b0
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 145 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_EquipmentExchangeUI.cs

@@ -0,0 +1,145 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.BagEquipment
+{
+    public partial class UI_EquipmentExchangeUI
+    {
+        public GComponent target;
+        public GComponent m_comBg;
+        public GTextField m_txtOwned;
+        public GTextField m_txtDesc;
+        public GLoader m_loaRarity;
+        public GLoader m_loaIcon;
+        public GTextField m_txtExchangeCount;
+        public GTextField m_txtGong;
+        public GTextField m_txtShang;
+        public GTextField m_txtJue;
+        public GTextField m_txtZhi;
+        public GGroup m_grpScore;
+        public GList m_listTag;
+        public GList m_listItem;
+        public GTextField m_txtShow;
+        public UI_Button2 m_btnMinus;
+        public GButton m_btnAdd;
+        public UI_Button3 m_btnMax;
+        public GTextField m_txtCostCount;
+        public GTextField m_txtTips;
+        public GComponent m_comCost;
+        public GTextField m_txtRmbCost;
+        public GButton m_btnCancle;
+        public GButton m_btnConfirm;
+        public GGroup m_bgpBtn;
+        public GGroup m_grpBtn;
+        public const string URL = "ui://aksf0ct7wf0ur";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "EquipmentExchangeUI";
+        private static UI_EquipmentExchangeUI _proxy;
+
+        public static UI_EquipmentExchangeUI Create(GObject gObject = null)
+        {
+            var ui = new UI_EquipmentExchangeUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_EquipmentExchangeUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_EquipmentExchangeUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_comBg = (GComponent)comp.GetChild("comBg");
+            m_txtOwned = (GTextField)comp.GetChild("txtOwned");
+            m_txtDesc = (GTextField)comp.GetChild("txtDesc");
+            m_loaRarity = (GLoader)comp.GetChild("loaRarity");
+            m_loaIcon = (GLoader)comp.GetChild("loaIcon");
+            m_txtExchangeCount = (GTextField)comp.GetChild("txtExchangeCount");
+            m_txtGong = (GTextField)comp.GetChild("txtGong");
+            m_txtShang = (GTextField)comp.GetChild("txtShang");
+            m_txtJue = (GTextField)comp.GetChild("txtJue");
+            m_txtZhi = (GTextField)comp.GetChild("txtZhi");
+            m_grpScore = (GGroup)comp.GetChild("grpScore");
+            m_listTag = (GList)comp.GetChild("listTag");
+            m_listItem = (GList)comp.GetChild("listItem");
+            m_txtShow = (GTextField)comp.GetChild("txtShow");
+            m_btnMinus = (UI_Button2)UI_Button2.Create(comp.GetChild("btnMinus"));
+            m_btnAdd = (GButton)comp.GetChild("btnAdd");
+            m_btnMax = (UI_Button3)UI_Button3.Create(comp.GetChild("btnMax"));
+            m_txtCostCount = (GTextField)comp.GetChild("txtCostCount");
+            m_txtTips = (GTextField)comp.GetChild("txtTips");
+            m_comCost = (GComponent)comp.GetChild("comCost");
+            m_txtRmbCost = (GTextField)comp.GetChild("txtRmbCost");
+            m_btnCancle = (GButton)comp.GetChild("btnCancle");
+            m_btnConfirm = (GButton)comp.GetChild("btnConfirm");
+            m_bgpBtn = (GGroup)comp.GetChild("bgpBtn");
+            m_grpBtn = (GGroup)comp.GetChild("grpBtn");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_comBg = null;
+            m_txtOwned = null;
+            m_txtDesc = null;
+            m_loaRarity = null;
+            m_loaIcon = null;
+            m_txtExchangeCount = null;
+            m_txtGong = null;
+            m_txtShang = null;
+            m_txtJue = null;
+            m_txtZhi = null;
+            m_grpScore = null;
+            m_listTag = null;
+            m_listItem = null;
+            m_txtShow = null;
+            m_btnMinus.Dispose();
+            m_btnMinus = null;
+            m_btnAdd = null;
+            m_btnMax.Dispose();
+            m_btnMax = null;
+            m_txtCostCount = null;
+            m_txtTips = null;
+            m_comCost = null;
+            m_txtRmbCost = null;
+            m_btnCancle = null;
+            m_btnConfirm = null;
+            m_bgpBtn = null;
+            m_grpBtn = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_EquipmentExchangeUI.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 53f2da96420ae8143a940ca4b9cde571
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 89 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ListPhotoItem.cs

@@ -0,0 +1,89 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.BagEquipment
+{
+    public partial class UI_ListPhotoItem
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public UI_ComIcon m_comIcon;
+        public GTextField m_txtTime;
+        public UI_Button1 m_btnLock;
+        public UI_Button2 m_btnUp;
+        public GImage m_imgSelectMask;
+        public const string URL = "ui://aksf0ct7ccdwj";
+        public const string PACKAGE_NAME = "BagEquipment";
+        public const string RES_NAME = "ListPhotoItem";
+        private static UI_ListPhotoItem _proxy;
+
+        public static UI_ListPhotoItem Create(GObject gObject = null)
+        {
+            var ui = new UI_ListPhotoItem();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ListPhotoItem Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ListPhotoItem();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_c1 = comp.GetController("c1");
+            m_comIcon = (UI_ComIcon)UI_ComIcon.Create(comp.GetChild("comIcon"));
+            m_txtTime = (GTextField)comp.GetChild("txtTime");
+            m_btnLock = (UI_Button1)UI_Button1.Create(comp.GetChild("btnLock"));
+            m_btnUp = (UI_Button2)UI_Button2.Create(comp.GetChild("btnUp"));
+            m_imgSelectMask = (GImage)comp.GetChild("imgSelectMask");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_comIcon.Dispose();
+            m_comIcon = null;
+            m_txtTime = null;
+            m_btnLock.Dispose();
+            m_btnLock = null;
+            m_btnUp.Dispose();
+            m_btnUp = null;
+            m_imgSelectMask = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BagEquipment/UI_ListPhotoItem.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 201d2f7ed1e9233408e0fb2c5794934a
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BlindBox/UI_BlindBoxUI.cs

@@ -8,7 +8,6 @@ namespace UI.BlindBox
     {
         public GComponent target;
         public GGraph m_effect;
-        public GGroup m_bg;
         public GButton m_ruleBtn;
         public GTextField m_txtTime;
         public GTextField m_txtDesc;
@@ -69,7 +68,6 @@ namespace UI.BlindBox
         private void Init(GComponent comp)
         {
             m_effect = (GGraph)comp.GetChild("effect");
-            m_bg = (GGroup)comp.GetChild("bg");
             m_ruleBtn = (GButton)comp.GetChild("ruleBtn");
             m_txtTime = (GTextField)comp.GetChild("txtTime");
             m_txtDesc = (GTextField)comp.GetChild("txtDesc");
@@ -86,7 +84,6 @@ namespace UI.BlindBox
         public void Dispose(bool disposeTarget = false)
         {
             m_effect = null;
-            m_bg = null;
             m_ruleBtn = null;
             m_txtTime = null;
             m_txtDesc = null;

+ 3 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/BlindBox/UI_Button1.cs

@@ -7,8 +7,8 @@ namespace UI.BlindBox
     public partial class UI_Button1
     {
         public GButton target;
-        public GLoader m_img;
         public GTextField m_num;
+        public GLoader m_newimg;
         public const string URL = "ui://zxtyrwszcf1ai";
         public const string PACKAGE_NAME = "BlindBox";
         public const string RES_NAME = "Button1";
@@ -56,13 +56,13 @@ namespace UI.BlindBox
 
         private void Init(GComponent comp)
         {
-            m_img = (GLoader)comp.GetChild("img");
             m_num = (GTextField)comp.GetChild("num");
+            m_newimg = (GLoader)comp.GetChild("newimg");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_img = null;
             m_num = null;
+            m_newimg = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 1
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Common/UI_ComHolder.cs

@@ -56,7 +56,7 @@ namespace UI.Common
         private void Init(GComponent comp)
         {
             m_holder = (GGraph)comp.GetChild("holder");
-        }   
+        }
         public void Dispose(bool disposeTarget = false)
         {
             m_holder = null;

Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff