From c274574062d8f809cfd658a8c4e9a141b0201343 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期六, 29 六月 2024 23:20:36 +0800
Subject: [PATCH] 0312 导表工具支持浮点二维列表

---
 Assets/Editor/Tool/ConfigClassGenerate.cs |   29 ++++++++++++++++++++++-------
 1 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/Assets/Editor/Tool/ConfigClassGenerate.cs b/Assets/Editor/Tool/ConfigClassGenerate.cs
index 4b2405d..6a2ade5 100644
--- a/Assets/Editor/Tool/ConfigClassGenerate.cs
+++ b/Assets/Editor/Tool/ConfigClassGenerate.cs
@@ -89,6 +89,10 @@
         {
             return StringUtility.Contact("public readonly int[][] ", field.Trim(), ";");
         }
+        else if (type.Contains("float[][]"))
+        {
+            return StringUtility.Contact("public readonly float[][] ", field.Trim(), ";");
+        }
         else if (type.Contains("int[]"))
         {
             return StringUtility.Contact("public readonly int[] ", field.Trim(), ";");
@@ -158,6 +162,10 @@
         {
             return StringUtility.Contact(field, " = JsonMapper.ToObject<int[][]>(tables", "[", index, "]", ")", "; ");
         }
+        else if (type.Contains("float[][]"))
+        {
+            return StringUtility.Contact(field, " = JsonMapper.ToObject<float[][]>(tables", "[", index, "]", ")", "; ");
+        }
         else if (type.Contains("int[]"))
         {
             var line0 = StringUtility.Contact("if (tables", "[", index, "].Contains(\"[\"))\n");
@@ -200,14 +208,21 @@
         }
         else if (type.Contains("float[]"))
         {
-            var line1 = StringUtility.Contact("string[] ", field, "StringArray", " = ", "tables", "[", index, "]", ".Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);", "\n");
-            var line2 = StringUtility.Contact(retract3, field, " = ", "new float", "[", field, "StringArray.Length", "]", ";", "\n");
-            var line3 = StringUtility.Contact(retract3, "for (int i=0;i<", field, "StringArray", ".Length", ";", "i++", ")", "\n");
-            var line4 = StringUtility.Contact(retract3, "{\n");
-            var line5 = StringUtility.Contact(retract4, " float.TryParse(", field, "StringArray", "[i]", ",", "out ", field, "[i]", ")", ";", "\n");
-            var line6 = StringUtility.Contact(retract3, "}");
+            var line0 = StringUtility.Contact("if (tables", "[", index, "].Contains(\"[\"))\n");
+            var line0_1 = StringUtility.Contact(retract3, "{\n");
+            var line0_2 = StringUtility.Contact(retract4, field, " = JsonMapper.ToObject<float[]>(tables", "[", index, "]);\n");
+            var line0_3 = StringUtility.Contact(retract3, "}\n");
+            var line0_4 = StringUtility.Contact(retract3, "else\n");
+            var line0_5 = StringUtility.Contact(retract3, "{\n");
+            var line1 = StringUtility.Contact(retract4, "string[] ", field, "StringArray", " = ", "tables", "[", index, "]", ".Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);", "\n");
+            var line2 = StringUtility.Contact(retract4, field, " = ", "new float", "[", field, "StringArray.Length", "]", ";", "\n");
+            var line3 = StringUtility.Contact(retract4, "for (int i=0;i<", field, "StringArray", ".Length", ";", "i++", ")", "\n");
+            var line4 = StringUtility.Contact(retract4, "{\n");
+            var line5 = StringUtility.Contact(retract5, " float.TryParse(", field, "StringArray", "[i]", ",", "out ", field, "[i]", ")", ";", "\n");
+            var line6 = StringUtility.Contact(retract4, "}\n");
+            var line0_6 = StringUtility.Contact(retract3, "}");
 
-            return StringUtility.Contact(line1, line2, line3, line4, line5, line6);
+            return StringUtility.Contact(line0, line0_1, line0_2, line0_3, line0_4, line0_5, line1, line2, line3, line4, line5, line6, line0_6);
         }
         else if (type.Contains("string[]"))
         {

--
Gitblit v1.8.0