Unity 接入Luban尝试

相关链接

Luban 文档

参照文档接入

  1. 安装
    在这里插入图片描述

2.创建一个unity项目,然后进入Assets文件夹同级目录,新建一个文件夹Luban
在这里插入图片描述
3.回到luban文档,继续下一步:准备配置工程,直接将模板文件夹MiniTemplate复制到刚刚在unity中创建的Luban文件夹中
4.我暂时直接跳过了 创建Reward表 的过程,因为MiniTemplate有一个测试excel表,等需要配置自己的表的时候再去创建
5.下一步 项目准备 这一步,按照指示将需要的文件从Package Manager中安装添加或者直接从git上下载再放到unity项目中就可以,然后开启unsafe选项
6.还需要将luban的批处理需要的文件下载下来,Luban Github,同时在之前Unity项目根目录下创建的Luban文件中再创建一个文件夹Tools,然后将下载下来的批处理文件解压后将整个文件夹放到Tools文件夹中
7. 准备生成脚本 发现MiniTemplate模板文件中有一个gen.bat文件(点击应该直接运行应该是正常的,运行该脚本,如果一切正常,会产生一系列日志,最终一行是 bye~),我们可以根据文档直接修改它,直接复制文档模板内容直接替换(自己也可以和模板文件对比下,参照文档的bat文件参数解读,应该能看出来都是什么意思)(其中,我保留了模板中 set WORKSPACE=.. 这个参数选项,注意:在这个上下文中,... 是在文件系统中相对路径的常用表示)

. 表示当前目录。例如,如果你的当前工作目录是C:\Users\Username\Documents, 那么 . 就表示 C:\Users\Username\Documents\。.. 表示上一级目录。继续上面的例子,.. 就会是 C:\Users\Username\,其中 ..\.. 代表上上级目录
在这里插入图片描述

// 这是我的bat文件,其中 %WORKSPACE%\Assets\_Game\Luban\Gen 是我在unity中创建的指定目录文件夹,用来存放批处理动态生成的C#文件
// 我将原来输出数据文件的路径从模板指定的 output 改成了我自己的路径 %WORKSPACE%\Assets\_Game\Luban\OutputData

set WORKSPACE=..\..
set LUBAN_DLL=%WORKSPACE%\Luban\Tools\Luban\Luban.dll
set CONF_ROOT=.

dotnet %LUBAN_DLL% ^
    -t client ^
    -c cs-simple-json ^
    -d json  ^
    --conf %CONF_ROOT%\luban.conf ^
	-x outputCodeDir=%WORKSPACE%\Assets\_Game\Luban\Gen ^
    -x outputDataDir=%WORKSPACE%\Assets\_Game\Luban\OutputData

pause

然后运行bat文件,应该可以发现需要的文件都已经生成,这时候就可以在unity中编辑代码获取数据了
8. 加载配置

 	void Start()
    {
        TempTest();
    }
    private void TempTest()
    {
        var tables = new cfg.Tables(LoadByteBuf);
        var reward = tables.TbItem.Get(10000);
        Debug.Log(reward.Name);
    }
    private static JSONNode LoadByteBuf(string file)
    {
        return JSON.Parse(File.ReadAllText(Application.dataPath + "/_Game/Luban/OutputData/" + file + ".json", System.Text.Encoding.UTF8));
    }
  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值