少年修仙传客户端基础资源
hch
2023-10-24 57d8018b909bb87bf9af486b7008b7ca7b8157e7
0312 读表增加对数组和二维数组的解析
2个文件已修改
34 ■■■■ 已修改文件
Assets/Editor/ScriptTemplate/ConfigDataTemplate.txt 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/Editor/Tool/ConfigClassGenerate.cs 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/Editor/ScriptTemplate/ConfigDataTemplate.txt
@@ -8,6 +8,7 @@
using System.Threading;
using System;
using UnityEngine;
using LitJson;
public partial class #ClassName#
{
Assets/Editor/Tool/ConfigClassGenerate.cs
@@ -85,7 +85,11 @@
    public static string GetField(string type, string field)
    {
        field = field.Replace(" ", "");
        if (type.Contains("int[]"))
        if (type.Contains("int[][]"))
        {
            return StringUtility.Contact("public readonly int[][] ", field.Trim(), ";");
        }
        else if (type.Contains("int[]"))
        {
            return StringUtility.Contact("public readonly int[] ", field.Trim(), ";");
        }
@@ -150,16 +154,27 @@
    public static string GetRead(string type, string field, int index)
    {
        field = field.Replace(" ", "");
        if (type.Contains("int[]"))
        if (type.Contains("int[][]"))
        {
            var line1 = StringUtility.Contact("string[] ", field, "StringArray", " = ", "tables", "[", index, "]", ".Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);", "\n");
            var line2 = StringUtility.Contact(retract3, field, " = ", "new int", "[", 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, " int.TryParse(", field, "StringArray", "[i]", ",", "out ", field, "[i]", ")", ";", "\n");
            var line6 = StringUtility.Contact(retract3, "}");
            return StringUtility.Contact(field, " = JsonMapper.ToObject<int[][]>(tables", "[", index, "]", ")", "; ");
        }
        else if (type.Contains("int[]"))
        {
            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<int[]>(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 int", "[", 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, " int.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("Int2[]"))
        {