From b423bc9be7f9607b8be7b30c48c3fc282d53b7a8 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期日, 24 八月 2025 22:43:38 +0800
Subject: [PATCH] 0312 导表新增字段类型Dictionary<int, int[][]>

---
 Assets/Editor/SpritePacking/SpriteSettings.asset |   22 ++++++++++++++++++++++
 Assets/Editor/ConfigGen/ConfigClassGenerate.cs   |   24 ++++++++++++++++++++----
 2 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/Assets/Editor/ConfigGen/ConfigClassGenerate.cs b/Assets/Editor/ConfigGen/ConfigClassGenerate.cs
index 2a41061..ff2b2a1 100644
--- a/Assets/Editor/ConfigGen/ConfigClassGenerate.cs
+++ b/Assets/Editor/ConfigGen/ConfigClassGenerate.cs
@@ -93,7 +93,11 @@
     public static string GetLoadField(string type, string field)
     {
         field = field.Replace(" ", "");
-        if (type.Contains("int[][]"))
+        if (type.Contains("Dictionary<int, int[][]>"))
+        {
+            return StringUtility.Contact("public Dictionary<int, int[][]> ", field.Trim(), ";");
+        }
+        else if (type.Contains("int[][]"))
         {
             return StringUtility.Contact("public int[][] ", field.Trim(), ";");
         }
@@ -173,7 +177,11 @@
 
     public static string GetFieldType(string type)
     {
-        if (type.Contains("int[][]"))
+        if (type.Contains("Dictionary<int, int[][]>"))
+        {
+            return "Dictionary<int, int[][]>";
+        }
+        else if (type.Contains("int[][]"))
         {
             return "int[][]";
         }
@@ -255,7 +263,11 @@
     public static string GetField(string type, string field)
     {
         field = field.Replace(" ", "");
-        if (type.Contains("int[][]"))
+        if (type.Contains("Dictionary<int, int[][]>"))
+        {
+            return StringUtility.Contact("public Dictionary<int, int[][]> ", field.Trim(), ";");
+        }
+        else if (type.Contains("int[][]"))
         {
             return StringUtility.Contact("public int[][] ", field.Trim(), ";");
         }
@@ -337,7 +349,11 @@
     {
         
         field = field.Replace(" ", "");
-        if (type.Contains("int[][]"))
+        if (type.Contains("Dictionary<int, int[][]>"))
+        {
+            return StringUtility.Contact(field, " = ConfigParse.ParseIntArray2Dict(tables", "[", index, "]); ");
+        }
+        else if (type.Contains("int[][]"))
         {
             return StringUtility.Contact(field, " = JsonMapper.ToObject<int[][]>(tables", "[", index, "].Replace(\"(\", \"[\").Replace(\")\", \"]\")); ");
         }
diff --git a/Assets/Editor/SpritePacking/SpriteSettings.asset b/Assets/Editor/SpritePacking/SpriteSettings.asset
index 4b93788..58f1694 100644
--- a/Assets/Editor/SpritePacking/SpriteSettings.asset
+++ b/Assets/Editor/SpritePacking/SpriteSettings.asset
@@ -453,3 +453,25 @@
       maxTextureSize: 2048
       textureCompression: 1
       textureFormat: 50
+  - folderName: HeroCall
+    blockOffset: 1
+    enableRotation: 0
+    enableTightPacking: 0
+    padding: 4
+    readable: 0
+    generateMipMaps: 0
+    sRGB: 1
+    filterMode: 1
+    platformSettings:
+    - name: Standalone
+      maxTextureSize: 2048
+      textureCompression: 1
+      textureFormat: 4
+    - name: Android
+      maxTextureSize: 2048
+      textureCompression: 1
+      textureFormat: 50
+    - name: iPhone
+      maxTextureSize: 2048
+      textureCompression: 1
+      textureFormat: 50

--
Gitblit v1.8.0