From bc5b6c7ed85f5bb7a8800ee35a939373fb044a6f Mon Sep 17 00:00:00 2001 From: coffee <985942825@qq.com> Date: Tue, 4 Feb 2025 12:47:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Core/Util/ExcelResolverUtil.Cell.cs | 2 +- .../Editor/ExcelResolverEditorConfig.cs | 3 - .../ExcelResolverEditorWindow.ReadExcel.cs | 29 +++--- .../ExcelResolverEditorWindow.WriteDataSO.cs | 2 +- .../Editor/ExcelResolverEditorWindow.cs | 5 + .../Excel/{com.xlsx => _com.xlsx} | Bin .../Excel/{com.xlsx.meta => _com.xlsx.meta} | 0 .../_Project/ExcelResolver/Excel/_enum.xlsx | Bin 11223 -> 0 bytes .../ExcelResolver/Excel/_enum.xlsx.meta | 7 -- .../_Project/ExcelResolver/Excel/_hero.xlsx | Bin 0 -> 21114 bytes .../Excel/{hero.xlsx.meta => _hero.xlsx.meta} | 0 .../Excel/{monster.xlsx => _monster.xlsx} | Bin .../{monster.xlsx.meta => _monster.xlsx.meta} | 0 .../Excel/{monster3.xlsx => _monster3.xlsx} | Bin ...monster3.xlsx.meta => _monster3.xlsx.meta} | 0 Assets/_Project/ExcelResolver/Excel/hero.xlsx | Bin 21125 -> 0 bytes .../_Project/ScriptableObject/Excel/Com.meta | 8 -- .../ScriptableObject/Excel/Com/_ComUtil.asset | 26 ----- .../Excel/Com/_ComUtil.asset.meta | 8 -- .../_Project/ScriptableObject/Excel/Hero.meta | 8 -- .../Excel/Hero/_HeroUtil.asset | 26 ----- .../Excel/Hero/_HeroUtil.asset.meta | 8 -- .../ScriptableObject/Excel/Monster.meta | 8 -- .../Excel/Monster/_MonsterUtil.asset | 26 ----- .../Excel/Monster/_MonsterUtil.asset.meta | 8 -- .../ScriptableObject/Excel/Monster3.meta | 8 -- .../Excel/Monster3/_Monster3Util.asset | 24 ----- .../Excel/Monster3/_Monster3Util.asset.meta | 8 -- .../Scripts/Generator/Excel/ComUtil.cs | 38 ------- .../Scripts/Generator/Excel/ComUtil.cs.meta | 2 - .../_Project/Scripts/Generator/Excel/Hero.cs | 88 ---------------- .../Scripts/Generator/Excel/Hero.cs.meta | 2 - .../Scripts/Generator/Excel/HeroUtil.cs | 25 ----- .../Scripts/Generator/Excel/HeroUtil.cs.meta | 2 - .../Scripts/Generator/Excel/Monster.cs | 93 ----------------- .../Scripts/Generator/Excel/Monster.cs.meta | 2 - .../Scripts/Generator/Excel/Monster3.cs | 98 ------------------ .../Scripts/Generator/Excel/Monster3.cs.meta | 2 - .../Scripts/Generator/Excel/Monster3Util.cs | 25 ----- .../Generator/Excel/Monster3Util.cs.meta | 2 - .../Scripts/Generator/Excel/MonsterUtil.cs | 25 ----- .../Generator/Excel/MonsterUtil.cs.meta | 2 - 42 files changed, 23 insertions(+), 597 deletions(-) rename Assets/_Project/ExcelResolver/Excel/{com.xlsx => _com.xlsx} (100%) rename Assets/_Project/ExcelResolver/Excel/{com.xlsx.meta => _com.xlsx.meta} (100%) delete mode 100644 Assets/_Project/ExcelResolver/Excel/_enum.xlsx delete mode 100644 Assets/_Project/ExcelResolver/Excel/_enum.xlsx.meta create mode 100644 Assets/_Project/ExcelResolver/Excel/_hero.xlsx rename Assets/_Project/ExcelResolver/Excel/{hero.xlsx.meta => _hero.xlsx.meta} (100%) rename Assets/_Project/ExcelResolver/Excel/{monster.xlsx => _monster.xlsx} (100%) rename Assets/_Project/ExcelResolver/Excel/{monster.xlsx.meta => _monster.xlsx.meta} (100%) rename Assets/_Project/ExcelResolver/Excel/{monster3.xlsx => _monster3.xlsx} (100%) rename Assets/_Project/ExcelResolver/Excel/{monster3.xlsx.meta => _monster3.xlsx.meta} (100%) delete mode 100644 Assets/_Project/ExcelResolver/Excel/hero.xlsx delete mode 100644 Assets/_Project/ScriptableObject/Excel/Com.meta delete mode 100644 Assets/_Project/ScriptableObject/Excel/Com/_ComUtil.asset delete mode 100644 Assets/_Project/ScriptableObject/Excel/Com/_ComUtil.asset.meta delete mode 100644 Assets/_Project/ScriptableObject/Excel/Hero.meta delete mode 100644 Assets/_Project/ScriptableObject/Excel/Hero/_HeroUtil.asset delete mode 100644 Assets/_Project/ScriptableObject/Excel/Hero/_HeroUtil.asset.meta delete mode 100644 Assets/_Project/ScriptableObject/Excel/Monster.meta delete mode 100644 Assets/_Project/ScriptableObject/Excel/Monster/_MonsterUtil.asset delete mode 100644 Assets/_Project/ScriptableObject/Excel/Monster/_MonsterUtil.asset.meta delete mode 100644 Assets/_Project/ScriptableObject/Excel/Monster3.meta delete mode 100644 Assets/_Project/ScriptableObject/Excel/Monster3/_Monster3Util.asset delete mode 100644 Assets/_Project/ScriptableObject/Excel/Monster3/_Monster3Util.asset.meta delete mode 100644 Assets/_Project/Scripts/Generator/Excel/ComUtil.cs delete mode 100644 Assets/_Project/Scripts/Generator/Excel/ComUtil.cs.meta delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Hero.cs delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Hero.cs.meta delete mode 100644 Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs delete mode 100644 Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs.meta delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Monster.cs delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Monster.cs.meta delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Monster3.cs delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Monster3.cs.meta delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs delete mode 100644 Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs.meta delete mode 100644 Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs delete mode 100644 Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs.meta diff --git a/Assets/Unity-Tools/ExcelResolver/Editor/Core/Util/ExcelResolverUtil.Cell.cs b/Assets/Unity-Tools/ExcelResolver/Editor/Core/Util/ExcelResolverUtil.Cell.cs index 4fd9ae5..15c61f5 100644 --- a/Assets/Unity-Tools/ExcelResolver/Editor/Core/Util/ExcelResolverUtil.Cell.cs +++ b/Assets/Unity-Tools/ExcelResolver/Editor/Core/Util/ExcelResolverUtil.Cell.cs @@ -67,7 +67,7 @@ namespace Tools.ExcelResolver.Editor where T : TType { object result; - if (string.IsNullOrEmpty(cell.Text)) // 如果单元格为空,则返回默认值 + if (string.IsNullOrEmpty(cell?.Text)) // 如果单元格为空,则返回默认值 { result = type.DefaultValue; } diff --git a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorConfig.cs b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorConfig.cs index 2830ee6..f8d9037 100644 --- a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorConfig.cs +++ b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorConfig.cs @@ -22,9 +22,6 @@ namespace Tools.ExcelResolver.Editor [SerializeField] internal bool isClearConsole = true; [LabelText("使用MD5跳过未修改的表格")] [SerializeField] internal bool useMD5 = true; - - - [SerializeField] internal Dictionary classCodeDataDict; [SerializeField] internal Dictionary md5Dict = new(); diff --git a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.ReadExcel.cs b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.ReadExcel.cs index 5849b12..5e8e686 100644 --- a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.ReadExcel.cs +++ b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.ReadExcel.cs @@ -13,13 +13,14 @@ namespace Tools.ExcelResolver.Editor { public sealed partial class ExcelResolverEditorWindow { - private void ReadExcel() + private void ReadExcel(bool needWriteCode = true) { - excelResolverConfig.classCodeDataDict = new Dictionary(); + classCodeDataDict = new Dictionary(); // 获取Excel文件 excelResolverConfig.MakeSureDirectory(); - var excelFiles = new DirectoryInfo(excelResolverConfig.ExcelPathRoot).GetFiles("*.xlsx").Where(f => !f.Name.StartsWith("~$") && !f.Name.StartsWith("_")); + var excelFiles = new DirectoryInfo(excelResolverConfig.ExcelPathRoot).GetFiles("*.xlsx") + .Where(f => !f.Name.StartsWith("~$") && !f.Name.StartsWith("_")); if (excelFiles.Count() == 0) { Debug.LogError("未检测到Excel文件,请检查路径"); @@ -41,24 +42,23 @@ namespace Tools.ExcelResolver.Editor using ExcelPackage package = new ExcelPackage(stream); ExcelWorksheet worksheet = package.Workbook.Worksheets["Sheet1"]; - if (null == worksheet) - { - Debug.LogError($"Excel:{excelFile.Name} don't have Sheet1 !!"); - continue; - } + Assert.IsTrue(worksheet != null, $"Excel:{excelFile.Name} don't have Sheet1 !!"); var classCodeData = new ClassCodeData(excelFile.Name[..^5]); classCodeData.fields = GetFieldData(worksheet, classCodeData); classCodeData.tableType = CheckTableTypeAndSetKeyField(worksheet, classCodeData); - WriteDataCode(classCodeData); - WriteUtilCode(classCodeData); - excelResolverConfig.classCodeDataDict.Add(worksheet, classCodeData); + if (needWriteCode) + { + WriteDataCode(classCodeData); + WriteUtilCode(classCodeData); + } + classCodeDataDict.Add(worksheet, classCodeData); Debug.Log($"读取Excel文件:'{excelFile.Name}',并生成代码"); } - if (excelResolverConfig.classCodeDataDict.Count == 0) + if (classCodeDataDict.Count == 0) { Debug.LogError("未检测到Excel文件改动,如需重新生成,请清空md5Dict"); return; @@ -94,7 +94,10 @@ namespace Tools.ExcelResolver.Editor { isCompilationFinished = false; Debug.Log("Assembly-CSharp加载完成,开始写入SO数据"); - WriteDataSO(); + if (classCodeDataDict == null) + { + ReadExcel(false); + } } } } diff --git a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.WriteDataSO.cs b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.WriteDataSO.cs index 60879fd..eb5b871 100644 --- a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.WriteDataSO.cs +++ b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.WriteDataSO.cs @@ -13,7 +13,7 @@ namespace Tools.ExcelResolver.Editor { private void WriteDataSO() { - foreach (var classCodeDataDictPair in excelResolverConfig.classCodeDataDict) + foreach (var classCodeDataDictPair in classCodeDataDict) { var worksheet = classCodeDataDictPair.Key; var classCodeData = classCodeDataDictPair.Value; diff --git a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.cs b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.cs index b73a3db..fd66105 100644 --- a/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.cs +++ b/Assets/Unity-Tools/ExcelResolver/Editor/ExcelResolverEditorWindow.cs @@ -1,3 +1,5 @@ +using System.Collections.Generic; +using OfficeOpenXml; using Sirenix.OdinInspector; using Sirenix.OdinInspector.Editor; using Sirenix.Utilities; @@ -11,6 +13,9 @@ namespace Tools.ExcelResolver.Editor public sealed partial class ExcelResolverEditorWindow : OdinEditorWindow { [SerializeField] private ExcelResolverEditorConfig excelResolverConfig; + + + [ShowInInspector] private Dictionary classCodeDataDict; [MenuItem("\u272dExcelResolver\u272d/ExcelResolverEditorWindow")] private static void OpenWindow() diff --git a/Assets/_Project/ExcelResolver/Excel/com.xlsx b/Assets/_Project/ExcelResolver/Excel/_com.xlsx similarity index 100% rename from Assets/_Project/ExcelResolver/Excel/com.xlsx rename to Assets/_Project/ExcelResolver/Excel/_com.xlsx diff --git a/Assets/_Project/ExcelResolver/Excel/com.xlsx.meta b/Assets/_Project/ExcelResolver/Excel/_com.xlsx.meta similarity index 100% rename from Assets/_Project/ExcelResolver/Excel/com.xlsx.meta rename to Assets/_Project/ExcelResolver/Excel/_com.xlsx.meta diff --git a/Assets/_Project/ExcelResolver/Excel/_enum.xlsx b/Assets/_Project/ExcelResolver/Excel/_enum.xlsx deleted file mode 100644 index 046976d6182d04b2b0b78bcbb313eac767fb2e95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11223 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 literal 0 HcmV?d00001 diff --git a/Assets/_Project/ExcelResolver/Excel/hero.xlsx.meta b/Assets/_Project/ExcelResolver/Excel/_hero.xlsx.meta similarity index 100% rename from Assets/_Project/ExcelResolver/Excel/hero.xlsx.meta rename to Assets/_Project/ExcelResolver/Excel/_hero.xlsx.meta diff --git a/Assets/_Project/ExcelResolver/Excel/monster.xlsx b/Assets/_Project/ExcelResolver/Excel/_monster.xlsx similarity index 100% rename from Assets/_Project/ExcelResolver/Excel/monster.xlsx rename to Assets/_Project/ExcelResolver/Excel/_monster.xlsx diff --git a/Assets/_Project/ExcelResolver/Excel/monster.xlsx.meta b/Assets/_Project/ExcelResolver/Excel/_monster.xlsx.meta similarity index 100% rename from Assets/_Project/ExcelResolver/Excel/monster.xlsx.meta rename to Assets/_Project/ExcelResolver/Excel/_monster.xlsx.meta diff --git a/Assets/_Project/ExcelResolver/Excel/monster3.xlsx b/Assets/_Project/ExcelResolver/Excel/_monster3.xlsx similarity index 100% rename from Assets/_Project/ExcelResolver/Excel/monster3.xlsx rename to Assets/_Project/ExcelResolver/Excel/_monster3.xlsx diff --git a/Assets/_Project/ExcelResolver/Excel/monster3.xlsx.meta b/Assets/_Project/ExcelResolver/Excel/_monster3.xlsx.meta similarity index 100% rename from Assets/_Project/ExcelResolver/Excel/monster3.xlsx.meta rename to Assets/_Project/ExcelResolver/Excel/_monster3.xlsx.meta diff --git a/Assets/_Project/ExcelResolver/Excel/hero.xlsx b/Assets/_Project/ExcelResolver/Excel/hero.xlsx deleted file mode 100644 index f69216ce151c69e531e908a01b498b5868ddbf14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21125 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 -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Tools.ExcelResolver -{ - using System; - using System.Collections; - using System.Collections.Generic; - using UnityEngine; - using Sirenix.OdinInspector; - - - public class ComUtil : SerializedScriptableObject, IExcelSOUtil - { - - /// - /// 初始仓库空位数 - /// - public int cangku_chushi; - - /// - /// 防御系数 - /// - public int des_xishu; - - /// - /// 初始解锁的塔 - /// - public List ta_chushi_unlock; - } -} diff --git a/Assets/_Project/Scripts/Generator/Excel/ComUtil.cs.meta b/Assets/_Project/Scripts/Generator/Excel/ComUtil.cs.meta deleted file mode 100644 index 0090571..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/ComUtil.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 65d0d896e6a9aba4c86524d1ead223f2 \ No newline at end of file diff --git a/Assets/_Project/Scripts/Generator/Excel/Hero.cs b/Assets/_Project/Scripts/Generator/Excel/Hero.cs deleted file mode 100644 index 3695fac..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Hero.cs +++ /dev/null @@ -1,88 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Tools.ExcelResolver -{ - using System; - using System.Collections; - using System.Collections.Generic; - using UnityEngine; - using Sirenix.OdinInspector; - - - public class Hero : SerializedScriptableObject, IExcelSOData - { - - /// - /// 英雄 - /// - public int id; - - /// - /// 名称 - /// - public string name; - - /// - /// icon - /// - public string icon; - - /// - /// 有宠物 - /// - public bool has; - - /// - /// 血量 - /// - public int hp; - - /// - /// 攻击力 - /// - public int atk; - - /// - /// 移速 - /// - public float speed; - - /// - /// 位置 - /// - public Vector3 pos; - - /// - /// 位置 - /// - public Vector2 ches; - - /// - /// 攻击优先级 - /// - public List attack_target; - - /// - /// 你好 - /// - public Dictionary nihao; - - /// - /// - /// - public Dictionary attribute; - - /// - /// - /// - public CustomizeColor color; - } -} diff --git a/Assets/_Project/Scripts/Generator/Excel/Hero.cs.meta b/Assets/_Project/Scripts/Generator/Excel/Hero.cs.meta deleted file mode 100644 index 1f1b4bc..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Hero.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: e8aa3c1560079b84cafbabe4bc0d2c8d \ No newline at end of file diff --git a/Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs b/Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs deleted file mode 100644 index a2b4b98..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs +++ /dev/null @@ -1,25 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Tools.ExcelResolver -{ - using System; - using System.Collections; - using System.Collections.Generic; - using UnityEngine; - using Sirenix.OdinInspector; - - - public class HeroUtil : SerializedScriptableObject, IExcelSOUtil - { - - public Dictionary Data; - } -} diff --git a/Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs.meta b/Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs.meta deleted file mode 100644 index 9ae8108..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/HeroUtil.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 0b8ec7437f31db141b138472f0c2a3aa \ No newline at end of file diff --git a/Assets/_Project/Scripts/Generator/Excel/Monster.cs b/Assets/_Project/Scripts/Generator/Excel/Monster.cs deleted file mode 100644 index 7fd8343..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Monster.cs +++ /dev/null @@ -1,93 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Tools.ExcelResolver -{ - using System; - using System.Collections; - using System.Collections.Generic; - using UnityEngine; - using Sirenix.OdinInspector; - - - public class Monster : SerializedScriptableObject, IExcelSOData - { - - /// - /// 英雄 - /// - public int id; - - /// - /// 等级 - /// - public int level; - - /// - /// 名称 - /// - public string name; - - /// - /// icon - /// - public string icon; - - /// - /// 有宠物 - /// - public bool has; - - /// - /// 血量 - /// - public int hp; - - /// - /// 攻击力 - /// - public int atk; - - /// - /// 移速 - /// - public float speed; - - /// - /// 位置 - /// - public Vector3 pos; - - /// - /// 位置 - /// - public Vector2 ches; - - /// - /// 攻击优先级 - /// - public List attack_target; - - /// - /// 你好 - /// - public Dictionary nihao; - - /// - /// - /// - public Dictionary attribute; - - /// - /// - /// - public CustomizeColor color; - } -} diff --git a/Assets/_Project/Scripts/Generator/Excel/Monster.cs.meta b/Assets/_Project/Scripts/Generator/Excel/Monster.cs.meta deleted file mode 100644 index 6baf8d9..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Monster.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 07476013186559f459c8b934922db079 \ No newline at end of file diff --git a/Assets/_Project/Scripts/Generator/Excel/Monster3.cs b/Assets/_Project/Scripts/Generator/Excel/Monster3.cs deleted file mode 100644 index 2da1903..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Monster3.cs +++ /dev/null @@ -1,98 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Tools.ExcelResolver -{ - using System; - using System.Collections; - using System.Collections.Generic; - using UnityEngine; - using Sirenix.OdinInspector; - - - public class Monster3 : SerializedScriptableObject, IExcelSOData - { - - /// - /// 英雄 - /// - public int id; - - /// - /// 等级 - /// - public int level; - - /// - /// 星级 - /// - public int star; - - /// - /// 名称 - /// - public string name; - - /// - /// icon - /// - public string icon; - - /// - /// 有宠物 - /// - public bool has; - - /// - /// 血量 - /// - public int hp; - - /// - /// 攻击力 - /// - public int atk; - - /// - /// 移速 - /// - public float speed; - - /// - /// 位置 - /// - public Vector3 pos; - - /// - /// 位置 - /// - public Vector2 ches; - - /// - /// 攻击优先级 - /// - public List attack_target; - - /// - /// 你好 - /// - public Dictionary nihao; - - /// - /// - /// - public Dictionary attribute; - - /// - /// - /// - public CustomizeColor color; - } -} diff --git a/Assets/_Project/Scripts/Generator/Excel/Monster3.cs.meta b/Assets/_Project/Scripts/Generator/Excel/Monster3.cs.meta deleted file mode 100644 index 61a1cf0..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Monster3.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 916e0a5dbd451394bb4ac42b142bbb9d \ No newline at end of file diff --git a/Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs b/Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs deleted file mode 100644 index cc31a3b..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs +++ /dev/null @@ -1,25 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Tools.ExcelResolver -{ - using System; - using System.Collections; - using System.Collections.Generic; - using UnityEngine; - using Sirenix.OdinInspector; - - - public class Monster3Util : SerializedScriptableObject, IExcelSOUtil - { - - public List Data; - } -} diff --git a/Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs.meta b/Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs.meta deleted file mode 100644 index 9bee5c4..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/Monster3Util.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 352ae4160560b684498c8ef06a908f94 \ No newline at end of file diff --git a/Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs b/Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs deleted file mode 100644 index 6004c0f..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs +++ /dev/null @@ -1,25 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace Tools.ExcelResolver -{ - using System; - using System.Collections; - using System.Collections.Generic; - using UnityEngine; - using Sirenix.OdinInspector; - - - public class MonsterUtil : SerializedScriptableObject, IExcelSOUtil - { - - public Dictionary<(System.Int32, System.Int32), Monster> Data; - } -} diff --git a/Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs.meta b/Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs.meta deleted file mode 100644 index c3a8768..0000000 --- a/Assets/_Project/Scripts/Generator/Excel/MonsterUtil.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 597b3ca9edd08af4290f8bdc398d04a1 \ No newline at end of file