
##### 流程组件
- [ ] **构建流程组件**
	抽象成管线
	找出运行时和编辑器共有的模块
	把这些模块做成组件
	运行时和编辑器分别实例不同的组件


##### 数据结构更换
- [ ] 更换为新的数据结构
	- 路线数据变更
		- 旧版本: 由文件夹下Roomline记录
		- 新版本: 用链表实现，在 **关卡表-房间表** 中指定首个房间，随后用房间指向下个房间组成链表实现路线
- [ ] 接入Luban的表格
	- 旧的数据结构包括
		- 文件夹下
			- SO文件
				- 地板图片
				- 预览图
				- 地板数据，长宽高，
				- 地板承载的摆件怪物标志信息
				缺点：
				- SO文件会实时改动到实际的物体的配置数据
					但编辑器通常的模式是，需要dirty，不想保存的修改，不能直接修改到原有的数据
				 - 对于无法序列化的东西无法保存，比如字典，参考路线配置，需要存一份文本配置来做序列化的事情
			
			- Json文件
				- 一份额外信息，key为mapIndex，value为对应的额外信息
		- StreamingAssetPath中
			- RoomData.json 记录房间的怪物波次
			- MonsterWaveData.csv 怪物波次信息

	 - 新的数据结构
		 - 文件夹下
			 - 所有地板以及地板摆放的物体.json
			 - 一份关于地图的数据，地图Id，地图名字
			 - 预览图
		- 配置表
			- 波次数据
				- 房间从1001开头用 多主键联合的方式

##### 重新梳理关系和职责
###### SpreadMap和SpreadMapLevel
	需要清晰的关系以及生命周期
###### MapBlock和RoomBase
	二者相互引用且耦合
