diff --git a/README.md b/README.md index 555c15d..b835af2 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ luban统一了游戏配置开发工作流,极大提升了策划和程序的工 ## 核心特性 - 强大的数据解析和转换能力 {excel(csv,xls,xlsx), json, bson, xml, yaml, lua, unity ScriptableObject} => {binary, json, bson, xml, lua, yaml, erlang} -- 支持生成c#,java,go,c++,lua,python,typescript,erlang,rust代码 +- 支持生成c#,java,go,c++,lua,python,javascript,typescript,erlang,rust代码 - 增强的excel格式,可以简洁地配置出像简单列表、子结构、结构列表,以及任意复杂的深层次的嵌套结构。 - 支持json、lua、xml等格式的数据来表达行为树、技能、剧情、副本之类复杂GamePlay数据 - 支持生成 protobuf(schema + binary + json)、flatbuffers(schema + json)、msgpack(binary) diff --git a/src/Luban.Job.Cfg/Source/Generate/Python2CodeJsonRender.cs b/src/Luban.Job.Cfg/Source/Generate/Python2CodeJsonRender.cs index 2cd07e0..7478253 100644 --- a/src/Luban.Job.Cfg/Source/Generate/Python2CodeJsonRender.cs +++ b/src/Luban.Job.Cfg/Source/Generate/Python2CodeJsonRender.cs @@ -26,7 +26,11 @@ namespace Luban.Job.Cfg.Generate fileContent.Add(StringTemplateManager.Ins.GetTemplateString("config/python2_json/include")); } - GenerateCodeMonolithic(ctx, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "Types.py"), lines, PreContent, null); + GenerateCodeMonolithic(ctx, + System.IO.Path.Combine(ctx.GenArgs.OutputCodeDir, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "Types.py")), + lines, + PreContent, + null); //string indexFileName = "__init__.py"; //string indexFileContent = ""; diff --git a/src/Luban.Job.Cfg/Source/Generate/Python3CodeJsonRender.cs b/src/Luban.Job.Cfg/Source/Generate/Python3CodeJsonRender.cs index 221b9c4..475c168 100644 --- a/src/Luban.Job.Cfg/Source/Generate/Python3CodeJsonRender.cs +++ b/src/Luban.Job.Cfg/Source/Generate/Python3CodeJsonRender.cs @@ -25,7 +25,11 @@ namespace Luban.Job.Cfg.Generate fileContent.Add(StringTemplateManager.Ins.GetTemplateString("config/python3_json/include")); } - GenerateCodeMonolithic(ctx, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "Types.py"), lines, PreContent, null); + GenerateCodeMonolithic(ctx, + System.IO.Path.Combine(ctx.GenArgs.OutputCodeDir, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "Types.py")), + lines, + PreContent, + null); } } } diff --git a/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs b/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs index 5542b01..ac5d32d 100644 --- a/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs +++ b/src/Luban.Job.Cfg/Source/Generate/RustCodeJsonRender.cs @@ -25,7 +25,10 @@ namespace Luban.Job.Cfg.Generate DefAssembly.LocalAssebmly.CurrentLanguage = ctx.Lan; var lines = new List(); - GenerateCodeMonolithic(ctx, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "mod.rs"), lines, ls => + GenerateCodeMonolithic(ctx, + System.IO.Path.Combine(ctx.GenArgs.OutputCodeDir, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "mod.rs")), + lines, + ls => { var template = StringTemplateManager.Ins.GetTemplate("config/rust_json/include"); var result = template.RenderCode(ctx.ExportTypes); diff --git a/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs b/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs index 3e7cb06..2a91606 100644 --- a/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs +++ b/src/Luban.Job.Cfg/Source/Generate/TypescriptCodeRenderBase.cs @@ -62,7 +62,11 @@ namespace Luban.Job.Cfg.Generate //fileContent.Add("}"); // end of topmodule }; - GenerateCodeMonolithic(ctx, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "Types.ts"), lines, preContent, postContent); + GenerateCodeMonolithic(ctx, + System.IO.Path.Combine(ctx.GenArgs.OutputCodeDir, RenderFileUtil.GetFileOrDefault(ctx.GenArgs.OutputCodeMonolithicFile, "Types.ts")), + lines, + preContent, + postContent); } } }