##### 流程组件 - [ ] **构建流程组件** 抽象成管线 找出运行时和编辑器共有的模块 把这些模块做成组件 运行时和编辑器分别实例不同的组件 ##### 数据结构更换 - [ ] 更换为新的数据结构 - 路线数据变更 - 旧版本: 由文件夹下Roomline记录 - 新版本: 用链表实现,在 **关卡表-房间表** 中指定首个房间,随后用房间指向下个房间组成链表实现路线 - [ ] 接入Luban的表格 - 旧的数据结构包括 - 文件夹下 - SO文件 - 地板图片 - 预览图 - 地板数据,长宽高, - 地板承载的摆件怪物标志信息 缺点: - SO文件会实时改动到实际的物体的配置数据 但编辑器通常的模式是,需要dirty,不想保存的修改,不能直接修改到原有的数据 - 对于无法序列化的东西无法保存,比如字典,参考路线配置,需要存一份文本配置来做序列化的事情 - Json文件 - 一份额外信息,key为mapIndex,value为对应的额外信息 - StreamingAssetPath中 - RoomData.json 记录房间的怪物波次 - MonsterWaveData.csv 怪物波次信息 - 新的数据结构 - 文件夹下 - 所有地板以及地板摆放的物体.json - 一份关于地图的数据,地图Id,地图名字 - 预览图 - 配置表 - 波次数据 - 房间从1001开头用 多主键联合的方式 ##### 重新梳理关系和职责 ###### SpreadMap和SpreadMapLevel 需要清晰的关系以及生命周期 ###### MapBlock和RoomBase 二者相互引用且耦合 ###### 先抽象工作流,在开始构建管道