Browse Source

代码整理

master
coffee 5 months ago
parent
commit
e965c423b0
  1. 1
      Assets/ScriptableObject/Excel/Hero_2.asset
  2. 1
      Assets/ScriptableObject/Excel/Hero_3.asset
  3. 4
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TFloat.cs
  4. 5
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TInt.cs
  5. 2
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TList.cs
  6. 5
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TString.cs
  7. 13
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TType.cs
  8. 5
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector2.cs
  9. 5
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector3.cs
  10. 28
      Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Util/ExcelResolverUtil.TType.cs

1
Assets/ScriptableObject/Excel/Hero_2.asset

@ -21,3 +21,4 @@ MonoBehaviour:
speed: 0
pos: {x: 0, y: 0, z: 0}
ches: {x: 0, y: 0}
attack_target:

1
Assets/ScriptableObject/Excel/Hero_3.asset

@ -21,3 +21,4 @@ MonoBehaviour:
speed: 1.1
pos: {x: 3, y: 2, z: 4}
ches: {x: 5, y: 12}
attack_target: 02000000

4
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TFloat.cs

@ -4,15 +4,15 @@ namespace Tools.ExcelResolver.Editor
{
internal class TFloat : TType
{
internal override string FieldWriteFormat => "System.Single";
internal override Type RealType => typeof(float);
internal override object DefaultValue => 0.0f;
internal override string FieldWriteFormat => "System.Single";
internal override bool String2TType(string typeText)
{
return string.Equals(typeText, "float", StringComparison.OrdinalIgnoreCase);
}
internal override Type RealType => typeof(float);
internal override object TryParseFrom(string cellText)
{

5
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TInt.cs

@ -4,16 +4,15 @@ namespace Tools.ExcelResolver.Editor
{
internal class TInt : TType
{
internal override string FieldWriteFormat => "System.Int32";
internal override Type RealType => typeof(int);
internal override object DefaultValue => 0;
internal override string FieldWriteFormat => "System.Int32";
internal override bool String2TType(string typeText)
{
return string.Equals(typeText, "int", StringComparison.OrdinalIgnoreCase);
}
internal override Type RealType => typeof(int);
internal override object TryParseFrom(string cellText)
{
return int.TryParse(cellText, out var result) ? result : null;

2
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TList.cs

@ -5,6 +5,7 @@ namespace Tools.ExcelResolver.Editor
{
internal class TList : TType
{
internal override Type RealType => typeof(List<int>);
internal override string FieldWriteFormat => "List<int>";
internal override object DefaultValue => new List<int>();
@ -24,7 +25,6 @@ namespace Tools.ExcelResolver.Editor
return true;
}
internal override Type RealType => typeof(List<int>);
internal override object TryParseFrom(string cellText)
{
var split = cellText.Split('|');

5
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TString.cs

@ -4,16 +4,15 @@ namespace Tools.ExcelResolver.Editor
{
internal class TString : TType
{
internal override string FieldWriteFormat => "System.string";
internal override Type RealType => typeof(string);
internal override object DefaultValue => string.Empty;
internal override string FieldWriteFormat => "System.string";
internal override bool String2TType(string typeText)
{
return string.Equals(typeText, "string", StringComparison.OrdinalIgnoreCase);
}
internal override Type RealType => typeof(string);
internal override object TryParseFrom(string cellText)
{
return cellText;

13
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TType.cs

@ -8,10 +8,23 @@ namespace Tools.ExcelResolver.Editor
internal abstract object DefaultValue { get; }
/// <summary>
/// 类型的写入格式
/// </summary>
internal abstract string FieldWriteFormat { get; }
/// <summary>
/// 通过字符串判断是否是当前类型
/// </summary>
/// <param name="typeText"></param>
/// <returns></returns>
internal abstract bool String2TType(string typeText);
/// <summary>
/// 将字符串转换为当前类型
/// </summary>
/// <param name="cellText"></param>
/// <returns></returns>
internal abstract object TryParseFrom(string cellText);
}
}

5
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector2.cs

@ -5,16 +5,15 @@ namespace Tools.ExcelResolver.Editor
{
internal class TVector2 : TType
{
internal override string FieldWriteFormat => "Vector2";
internal override Type RealType => typeof(Vector2);
internal override object DefaultValue => Vector2.zero;
internal override string FieldWriteFormat => "Vector2";
internal override bool String2TType(string typeText)
{
return string.Equals(typeText, "vector2", StringComparison.OrdinalIgnoreCase);
}
internal override Type RealType => typeof(Vector2);
internal override object TryParseFrom(string cellText)
{
cellText = cellText[1..^1];

5
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Types/TVector3.cs

@ -5,16 +5,15 @@ namespace Tools.ExcelResolver.Editor
{
internal class TVector3 : TType
{
internal override string FieldWriteFormat => "Vector3";
internal override Type RealType => typeof(Vector3);
internal override object DefaultValue => Vector3.zero;
internal override string FieldWriteFormat => "Vector3";
internal override bool String2TType(string typeText)
{
return string.Equals(typeText, "vector3", StringComparison.OrdinalIgnoreCase);
}
internal override Type RealType => typeof(Vector3);
internal override object TryParseFrom(string cellText)
{
if (!cellText.StartsWith("(") || !cellText.EndsWith(")"))

28
Assets/Unity-Tools/Core/ExcelResolver/Editor/Core/Util/ExcelResolverUtil.TType.cs

@ -37,34 +37,6 @@ namespace Tools.ExcelResolver.Editor
}
throw new Exception($"未找到类型 {typeText}");
return typeText switch
{
"int" => new TInt(),
"float" => new TFloat(),
"string" => new TString(),
"bool" => new TBool(),
"vector2" => new TVector2(),
"vector3" => new TVector3(),
// "List<int>" => typeof(List<int>),
// "List<float>" => typeof(List<float>),
// "List<string>" => typeof(List<string>),
// "List<bool>" => typeof(List<bool>),
// "List<Vector2>" => typeof(List<Vector2>),
// "List<Vector3>" => typeof(List<Vector3>),
//
// "List<List<int>>" => typeof(List<List<int>>),
// "List<List<float>>" => typeof(List<List<float>>),
// "List<List<string>>" => typeof(List<List<string>>),
// "List<List<bool>>" => typeof(List<List<bool>>),
// "List<List<Vector2>>" => typeof(List<List<Vector2>>),
// "List<List<Vector3>>" => typeof(List<List<Vector3>>),
//
// "enum" => typeof(Enum),
// "DateTime" => typeof(DateTime),
_ => null,
};
}
}
}
Loading…
Cancel
Save