From 1881b0d3575e5646451569ecd2cfbdc8da3dbb70 Mon Sep 17 00:00:00 2001 From: coffee <985942825@qq.com> Date: Mon, 20 Jan 2025 01:15:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=AD=97=E7=AC=A6=E4=B8=B2?= =?UTF-8?q?=E7=94=9F=E6=88=90=E8=84=9A=E6=9C=AC=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/ExcelResolver/Excel/hero.xlsx | Bin 10789 -> 10838 bytes Assets/ScriptableObject/Excel/Hero_1.asset | 1 + Assets/ScriptableObject/Excel/Hero_2.asset | 1 + Assets/ScriptableObject/Excel/Hero_3.asset | 1 + Assets/Scripts/Generator/Excel/Hero.cs | 9 +++++++-- .../Editor/Core/Data/FieldData.cs | 2 +- .../ExcelResolver/Editor/Core/Types/TBool.cs | 10 ++++++++-- .../ExcelResolver/Editor/Core/Types/TFloat.cs | 4 ++-- .../ExcelResolver/Editor/Core/Types/TInt.cs | 4 ++-- .../ExcelResolver/Editor/Core/Types/TList.cs | 18 +++++++++++++++--- .../Editor/Core/Types/TString.cs | 4 ++-- .../ExcelResolver/Editor/Core/Types/TType.cs | 2 +- .../Editor/Core/Types/TVector2.cs | 10 +++++----- .../Editor/Core/Types/TVector3.cs | 10 +++++----- 14 files changed, 51 insertions(+), 25 deletions(-) diff --git a/Assets/ExcelResolver/Excel/hero.xlsx b/Assets/ExcelResolver/Excel/hero.xlsx index 8e14bce048d36d5ba0a510f2053de5f1dea5cdc4..ca6fb04d2c4494a44df1df84502b37140350d2fb 100644 GIT binary patch delta 2108 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 delta 2022 zcmV5kf6c`+ z&jCk-^l=4_OYS&sfMLBSqAgO2J+hvfvIR(ip@a&QvzT@${_#36mHl&|RSuk0;TE;; zw2gbnmSQ9B-E&*)jkDRTGwZf7e13`_M>ltE)v!>_t^}YomVyZb+-Z{von-(zQ`$~* zZeo0(HG3?%btAv>tN?krNY`&4QtS86)$(h#e2wvM-J{zk8$QUuXJeZtJLRE!bv+)U zG$K(qB)yPEV@etAF+!f2=a1%_tecB!8{&UrFC;Xi7h~FI(HSG%1L6*lwz-f0NBRx3 z9|N@k3b%ycPTvCn080&%5eXTSuPFt8l~>zt>NpgAA8Gy}@_Q2!XekIdIwf4Ck&dS4 z^6VxCtR`{BF{Ed{ezxsgu#=X~Lus(rUVD4(W#i1gyrqeAA-te0nw?0reLrnin~gVyUM~>#lO*O^kJ>QHQ8UtQ7OtbAAWJ zIV|plCRF@Z%dHC{qU9;e(k=6U!i}=3iYtNqu}8%6TnLtiSYWi6sSbSO-eMM0P*Jwt z;p8w!U;XKRf?!-Beo|5vSI>^XFV7?)ksvWx1v%0JFO0oP;0}fcl3M{JBaQ^UkR?fy zIobz9u+cv%iF}3>UX$bcxz4v%w)w`Lm>lpq5lfc*qOmy5(FE0Ff3tFbOX%?=pqQb1 zFG(Yo00VqFDV26cPKw`jtvcEd+=t*EIg!$%qV%g!9TZeS@V~5rU=Mr{02Qe$@V^e2 zxHppcu+Ma9@K8ks0W9L9M1Hd#DZZ{Pn7G4nZE2c&<(BM&?>}J7ZI3< zWfw6t5n&fGG7+mT;@(88yNCx9vFRelCSuz~Jer7I7cnsr`!2$NrxS9k-Rf`Ki3Z(v z!fr(m#O_58#BRoI$f^foCEDDEYtMB_BNZWYB`J?}TrFVmF^|tKt)B~~n zvh0Cah6%e6ONCVz5ww<4yKvJ3vD~rkfmlu3^*}6l>_3DUa>HSF)85TF(|{YbgH{ED z_Te_|sG)7ZEv@CBum|#vf5wnmAH2a7eiy1E@@WiDmxZPF62NUv%Q&GiX<24f@eQmN zugB`wPagIg4Y5ssu&p9pyRAk#%YOUo$zhw*&|KavdshCaR&Hfm0=QZE(2^xICauVo z=JW5{DwMg`Mv!I5O&w$&!`o`u9NigAt-(~9y)oI^#83k64)6UM8>X1_N(0fYG_A{2 z`p}rP9JA7VkG3*KjAf)v6=O=U)uX;^b!KN!*(SN39JNJiXle8fQD0qhd?bHiexzC9 zB;)|A9k}2yuCIUUS+HD~6k=V^xqh@i@PEZ{C~7Fu~@y$h{F%m}wQVUe{+Hs8}bN+78+Mt=r2R%tIqpB6F=E zWD`KP8C|^+AR5o+Dhyd_OnF@hj8iBic6ABL?hJHQe@J7O)waO00-0b6V2WJyeScjP zGE>Zp^-!6Rt*$d~sIn(RxcLWqEDA7-0uyn5&o-089hhv%M>*_d$xa|l6o_B@e`7|n zqL?LAlq`T+7HdT}*Jf1^w8Q|3HV15I`D`fGFif@=MCe}49b>f&^_*?U8Eb}+5?ruD01x-mbSHoGTO ze_ZU(FFsS{JZYO*DNRa4Zy zttD4F{k99*M*9C$6!rs%egaTS0|b-%C>paw6_XGG*dvqKB|iZ&lNly60alYuCX)r| zWuMz$ljSB<0Unb&CqMyslY1vH0e+LLCpH14ljA2X8}CWA+_?b&06zo(02BZK00000 z0096X0000AlPf4e0R@w7C^`YUlc*>*0^tmk;3z)=^%RpKDLVm~lU*qx9JhquPTvCn z080%302lxO000000096X0002R1e4$?6_c+iF9F(<-zh}`$_kU(^b E07D9?`Tzg` diff --git a/Assets/ScriptableObject/Excel/Hero_1.asset b/Assets/ScriptableObject/Excel/Hero_1.asset index 168d7a2..02be0de 100644 --- a/Assets/ScriptableObject/Excel/Hero_1.asset +++ b/Assets/ScriptableObject/Excel/Hero_1.asset @@ -15,6 +15,7 @@ MonoBehaviour: id: 1 name: "\u9053\u58EB" icon: hero_1 + has: 0 hp: 100 atk: 20 speed: 1.2 diff --git a/Assets/ScriptableObject/Excel/Hero_2.asset b/Assets/ScriptableObject/Excel/Hero_2.asset index 34540a2..124729f 100644 --- a/Assets/ScriptableObject/Excel/Hero_2.asset +++ b/Assets/ScriptableObject/Excel/Hero_2.asset @@ -15,6 +15,7 @@ MonoBehaviour: id: 2 name: "\u6218\u58EB" icon: hero_2 + has: 1 hp: 150 atk: 15 speed: 1 diff --git a/Assets/ScriptableObject/Excel/Hero_3.asset b/Assets/ScriptableObject/Excel/Hero_3.asset index e3dbac6..a037b53 100644 --- a/Assets/ScriptableObject/Excel/Hero_3.asset +++ b/Assets/ScriptableObject/Excel/Hero_3.asset @@ -15,6 +15,7 @@ MonoBehaviour: id: 2 name: "\u5973\u5DEB" icon: hero_3 + has: 0 hp: 80 atk: 8 speed: 1.1 diff --git a/Assets/Scripts/Generator/Excel/Hero.cs b/Assets/Scripts/Generator/Excel/Hero.cs index 0f66105..2617962 100644 --- a/Assets/Scripts/Generator/Excel/Hero.cs +++ b/Assets/Scripts/Generator/Excel/Hero.cs @@ -34,6 +34,11 @@ namespace Tools.ExcelResolver /// public string icon; + /// + /// 有宠物 + /// + public bool has; + /// /// 血量 /// @@ -52,11 +57,11 @@ namespace Tools.ExcelResolver /// /// 位置 /// - public UnityEngine.Vector3 pos; + public Vector3 pos; /// /// 位置 /// - public UnityEngine.Vector2 ches; + public Vector2 ches; } } diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Data/FieldData.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Data/FieldData.cs index 4538110..28dce6e 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Data/FieldData.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Data/FieldData.cs @@ -21,7 +21,7 @@ namespace Tools.ExcelResolver.Editor { Attributes = MemberAttributes.Public, Name = varName, - Type = new CodeTypeReference(type.RealType), + Type = new CodeTypeReference(type.FieldWriteFormat), Comments = { new CodeCommentStatement("", true), diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TBool.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TBool.cs index 2cf388c..32298f1 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TBool.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TBool.cs @@ -4,11 +4,11 @@ namespace Tools.ExcelResolver.Editor { internal class TBool : TType { - internal override string TypeName => "bool"; + internal override string FieldWriteFormat => "System.Boolean"; internal override bool String2TType(string typeText) { - return string.Equals(typeText, TypeName, StringComparison.OrdinalIgnoreCase); + return string.Equals(typeText, "bool", StringComparison.OrdinalIgnoreCase); } internal override Type RealType => typeof(bool); @@ -19,6 +19,12 @@ namespace Tools.ExcelResolver.Editor { return result; } + + if (cellText is "1") + { + return true; + } + return null; } } diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TFloat.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TFloat.cs index 9ac8087..315e7c6 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TFloat.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TFloat.cs @@ -4,11 +4,11 @@ namespace Tools.ExcelResolver.Editor { internal class TFloat : TType { - internal override string TypeName => "float"; + internal override string FieldWriteFormat => "System.Single"; internal override bool String2TType(string typeText) { - return string.Equals(typeText, TypeName, StringComparison.OrdinalIgnoreCase); + return string.Equals(typeText, "float", StringComparison.OrdinalIgnoreCase); } internal override Type RealType => typeof(float); diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TInt.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TInt.cs index 2d2859b..a18d66b 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TInt.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TInt.cs @@ -4,11 +4,11 @@ namespace Tools.ExcelResolver.Editor { internal class TInt : TType { - internal override string TypeName => "int"; + internal override string FieldWriteFormat => "System.Int32"; internal override bool String2TType(string typeText) { - return string.Equals(typeText, TypeName, StringComparison.OrdinalIgnoreCase); + return string.Equals(typeText, "int", StringComparison.OrdinalIgnoreCase); } internal override Type RealType => typeof(int); diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TList.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TList.cs index 59161d0..0dee360 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TList.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TList.cs @@ -5,13 +5,25 @@ namespace Tools.ExcelResolver.Editor { internal class TList : TType { - internal override string TypeName => "list"; + internal override string FieldWriteFormat => "List"; + internal override bool String2TType(string typeText) { - return false; + var split = typeText.Split('|'); + if (split.Length != 2) + { + return false; + } + + if (!string.Equals(split[0], "list", StringComparison.OrdinalIgnoreCase) || !string.Equals(split[1], "int", StringComparison.OrdinalIgnoreCase)) + { + return false; + } + + return true; } - internal override Type RealType => typeof(List<>); + internal override Type RealType => typeof(List); internal override object TryParseFrom(string cellText) { return null; diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TString.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TString.cs index 9ae9782..671d717 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TString.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TString.cs @@ -4,11 +4,11 @@ namespace Tools.ExcelResolver.Editor { internal class TString : TType { - internal override string TypeName => "string"; + internal override string FieldWriteFormat => "System.string"; internal override bool String2TType(string typeText) { - return string.Equals(typeText, TypeName, StringComparison.OrdinalIgnoreCase); + return string.Equals(typeText, "string", StringComparison.OrdinalIgnoreCase); } internal override Type RealType => typeof(string); diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TType.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TType.cs index e37a1da..00c0668 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TType.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TType.cs @@ -4,7 +4,7 @@ namespace Tools.ExcelResolver.Editor { internal abstract class TType { - internal abstract string TypeName { get; } + internal abstract string FieldWriteFormat { get; } internal abstract bool String2TType(string typeText); diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector2.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector2.cs index e672194..758f139 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector2.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector2.cs @@ -5,11 +5,11 @@ namespace Tools.ExcelResolver.Editor { internal class TVector2 : TType { - internal override string TypeName => "vector2"; + internal override string FieldWriteFormat => "Vector2"; internal override bool String2TType(string typeText) { - return string.Equals(typeText, TypeName, StringComparison.OrdinalIgnoreCase); + return string.Equals(typeText, "vector2", StringComparison.OrdinalIgnoreCase); } internal override Type RealType => typeof(Vector2); @@ -17,14 +17,14 @@ namespace Tools.ExcelResolver.Editor internal override object TryParseFrom(string cellText) { cellText = cellText[1..^1]; - var ss = cellText.Split(','); - if (ss.Length != 2) + var split = cellText.Split(','); + if (split.Length != 2) { return null; } else { - return new Vector2(float.Parse(ss[0]), float.Parse(ss[1])); + return new Vector2(float.Parse(split[0]), float.Parse(split[1])); } } } diff --git a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector3.cs b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector3.cs index 2e6b386..d969091 100644 --- a/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector3.cs +++ b/Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector3.cs @@ -5,11 +5,11 @@ namespace Tools.ExcelResolver.Editor { internal class TVector3 : TType { - internal override string TypeName => "vector3"; + internal override string FieldWriteFormat => "Vector3"; internal override bool String2TType(string typeText) { - return string.Equals(typeText, TypeName, StringComparison.OrdinalIgnoreCase); + return string.Equals(typeText, "vector3", StringComparison.OrdinalIgnoreCase); } internal override Type RealType => typeof(Vector3); @@ -22,14 +22,14 @@ namespace Tools.ExcelResolver.Editor } cellText = cellText[1..^1]; - var ss = cellText.Split(','); - if (ss.Length != 3) + var split = cellText.Split(','); + if (split.Length != 3) { return null; } else { - return new Vector3(float.Parse(ss[0]), float.Parse(ss[1]), float.Parse(ss[2])); + return new Vector3(float.Parse(split[0]), float.Parse(split[1]), float.Parse(split[2])); } } }