Unity之Luban使用流程

数据类和数据文件创建

  1. 创建excel表格,填充数据;
  2. 使用Luban工具生成数据类和数据文件;
    Code Target:c cs-newtonsoft-json
    Data Target:d json
    注意 :Code Target: cs-simple-json在Unity2021.3.45f2c1会出现错误
    升级luban工具可以解决这个问题
  3. 数据类放到项目中;数据文件放在指定文件夹中。

运行时使用

数据文件:放置在Assets/StreamingAssets/Luban中

数据:

csharp 复制代码
[
  {
    "id": 1001,
    "name": "道具1",
    "desc": "描述1",
    "count": 10
  },
  {
    "id": 1002,
    "name": "道具2",
    "desc": "描述2",
    "count": 100
  }
]

加载数据,遍历表中数据

item类描述数据,TbItem管理表中所有的item,类似容器

csharp 复制代码
using System;
using System.IO;
using Newtonsoft.Json.Linq;
using UnityEngine;
public class TestLuban : MonoBehaviour
{
    void Awake()
    {
        //加载配置
        //所有配置文件放置在Assets/StreamingAssets/Luban文件夹中,没有子文件夹
        Func<string, JArray> loader = (fileName) =>
        {
            //拼接文件路径
            string path = Path.Combine(
            Application.streamingAssetsPath,
            "Luban",
            fileName + ".json");
            string jsonText = File.ReadAllText(path);
            return JArray.Parse(jsonText);
        };

        var tables = new cfg.Tables(loader);

        //使用配置
        //每个数据类有一个对应Tb类管理
        //所有表的管理器 获取对应的表管理器 获取表中对应数据类的所有对象
        var items = tables.Tbitem.DataList;
        foreach (var item in items)
        {
            Debug.Log(item);
        }
    }
}
相关推荐
KhalilRuan7 小时前
Unity性能优化
unity·性能优化·游戏引擎
ellis19707 小时前
u3d IMGUI[二] 编辑器扩展
unity
五仁烧饼19 小时前
Unity性能优化系列内存篇 - 移动端内存优化
unity·性能优化·游戏引擎
WiChP2 天前
【V0.1B15】从零开始的2D游戏引擎开发之路
游戏引擎
zhchyun20084 天前
# 【Unity UI 进阶】仿 Element UI 打造企业级 Unity UI 组件库(06)
ui·unity·游戏引擎
Behaviour4 天前
Unity游戏HybridCLR 热更新接入实战
游戏·unity·游戏引擎
LONGZETECH4 天前
新能源汽车动力电池实训教学痛点与虚拟仿真技术解决方案
c语言·3d·unity·架构·汽车·汽车教学软件
王维志4 天前
UiSplineRenderer
unity·游戏引擎
k4m7v2pz5 天前
Godot 4 仿 agar.io:相机缩放被 max_zoom 卡死,窗口越大球越小的根因与修复
游戏引擎·godot·相机·缩放·clamp·camera2d
FairGuard手游加固5 天前
iOS 游戏加固技术解析:代码混淆、资源加密、内存保护与重签名检测
安全·游戏·macos·unity·ios·objective-c