コード例 #1
0
ファイル: GenPrefab_CS.cs プロジェクト: neshlabs/nesh
        private static string GenEntityTables(XMLEntity entity)
        {
            StringBuilder sb = new StringBuilder();

            string parent_name = entity.GetEntityParentFormat();

            if (!string.IsNullOrEmpty(parent_name) && entity.Parent != null && entity.Parent.tables.Count >= 0)
            {
                sb.Append(GenUtils.str_tab2 + "public new class Tables").Append(" : ").Append(parent_name).Append(".Tables");
            }
            else
            {
                sb.Append(GenUtils.str_tab2 + "public class Tables");
            }

            sb.AppendLine();
            sb.Append(GenUtils.str_tab2 + "{");
            sb.AppendLine();

            foreach (TablePrefab table in entity.SelfTables)
            {
                string className = FormatSplit(table.name);
                sb.Append(GenUtils.str_tab3).Append("public class ").Append(className.ToString());
                sb.AppendLine();
                sb.Append(GenUtils.str_tab3 + "{");

                sb.AppendLine();
                sb.Append(GenUtils.str_tab4).Append("/// <summary>").AppendLine();
                sb.Append(GenUtils.str_tab4).AppendFormat("/// {0} Save={1} Sync={2}", table.desc, table.save, table.sync).AppendLine();
                sb.Append(GenUtils.str_tab4).Append("/// </summary>");

                sb.AppendLine().Append(GenUtils.str_tab4);
                sb.Append("public const string TABLE_NAME = \"").Append(table.name).Append("\";");

                sb.AppendLine();

                foreach (TablePrefab.ColumnPrefab column in table.columns.Values)
                {
                    sb.AppendLine();
                    sb.Append(GenUtils.str_tab4).Append("/// <summary>").AppendLine();
                    sb.Append(GenUtils.str_tab4).AppendFormat("/// {0} {1}", column.desc, column.type).AppendLine();
                    sb.Append(GenUtils.str_tab4).Append("/// </summary>");

                    sb.AppendLine().Append(GenUtils.str_tab4);
                    sb.Append("public const int COL_").Append(column.name.ToUpper()).Append(" = ").Append(column.index).Append(";");
                }

                sb.AppendLine();
                sb.Append(GenUtils.str_tab3 + "}");
                sb.AppendLine();
            }
            sb.AppendLine();
            sb.Append(GenUtils.str_tab2 + "}") /*.AppendLine()*/;

            return(sb.ToString());
        }
コード例 #2
0
ファイル: GenPrefab_CS.cs プロジェクト: neshlabs/nesh
        private static string GenEntityFields(XMLEntity entity)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append(GenUtils.str_tab2);

            string parent_name = entity.GetEntityParentFormat();

            if (!string.IsNullOrEmpty(parent_name) && entity.Parent != null && entity.Parent.fields.Count >= 0)
            {
                sb.Append("public new class Fields").Append(" : ").Append(parent_name).Append(".Fields");
            }
            else
            {
                sb.Append("public class Fields");
            }
            sb.AppendLine();
            sb.Append(GenUtils.str_tab2 + "{");

            foreach (FieldPrefab field in entity.SelfFields)
            {
                sb.AppendLine();
                sb.Append(GenUtils.str_tab3).Append("/// <summary>").AppendLine();
                sb.Append(GenUtils.str_tab3).AppendFormat("/// {0} {1} Save={2} Sync={3}", field.desc, field.type, field.save, field.sync).AppendLine();
                sb.Append(GenUtils.str_tab3).Append("/// </summary>").AppendLine();

                sb.Append(GenUtils.str_tab3).Append("public const string ").Append(field.name.ToUpper()).Append(" = \"");
                sb.Append(field.name).Append("\";");

                //sb.AppendLine();
            }

            sb.AppendLine();
            sb.Append(GenUtils.str_tab2 + "}");
            sb.AppendLine();

            return(sb.ToString());
        }