diff --git a/_server/refactoring.md b/_server/refactoring.md index 8ea8c365..168d1e6f 100644 --- a/_server/refactoring.md +++ b/_server/refactoring.md @@ -16,12 +16,19 @@ editor_file之后是更改editor.map的储存方式, 现有的存对象的模式 ## 文件结构 +(全部小写,必要时用下划线分割) + + [ ] editor_blockly 图块化事件编辑器 + [ ] editor_multi 多行文本编辑器 + [x] editor_table 处理表格的生成, 及其响应的事件, 从原editor\_mode中分离 + [ ] editor_file 调用fs.js编辑文件, 把原editor\_file模块化, 并且只负责文件写入 + [ ] editor_game 处理游戏数据, 导入为editor的数据, 编辑数据, 从原editor和editor_file中抽离. **只有此文件允许`\s(main|core)`形式的调用**(以及其初始化`editor_game_wrapper(editor, main, core);`) + [x] editor_util 生成guid/处理颜色 等函数, 从editor分离 ++ [ ] editor_action 处理界面上的按钮/下拉框点击等用户的操作与功能函数的绑定, 维护editor.dom, unsorted_1/2中的绑定挪到此处, 其中的函数内容, 分类放在其他文件 ++ [ ] editor_mappanel 与地图面板相关的功能, <-unsorted_1/2/3 ++ [ ] editor_datapanel 与数据面板相关的功能, <-unsorted_1/2/3 ++ [ ] editor_materialpanel 与素材面板相关的功能, <-unsorted_1/2/3 ++ [ ] editor_ui 维护printe/printf/tip, 以及之后可能的窗口化 + [ ] editor 执行初始化流程加组合各组件 + [ ] 原editor_mode 移除 + [x] 原vm 移除 @@ -72,9 +79,11 @@ editor: { + editor.widthX特别不直观 ++ ? 编辑器使用可拖拽和调大小的窗口做容器 + ## 功能改进 -+ [ ] 大地图 ++ [x] 大地图 在切换时, 每次都回到最左上->每个楼层记录一个位置 四个箭头支持长按 ? 滚动条 @@ -87,12 +96,12 @@ editor: { + [ ] ? 简洁的事件方块注册 `editor.registerEvent('log',[['test','Int','测试',0],['floorId','Idstring','楼层','MT0']])` -+ [ ] 一个显示所有快捷键的文本 ++ [x] 一个显示所有快捷键的文本 -+ [ ] 更多快捷键 ++ [x] 更多快捷键 【全塔属性】、【楼层属性】等常用的编辑栏切换 -+ [ ] ? 地图编辑优化 ++ [x] ? 地图编辑优化 常用的地图编辑快捷键/命令:复制ctrl+c、粘贴ctrl+v、(复制可绑定为现在的“选中xx位置事件” 粘贴为复制xx事件到此处),撤回ctrl+z、取消撤回ctrl+y 可以按住拖动图块与事件。 @@ -103,18 +112,20 @@ editor: { + [x] 修改系统的触发器(下拉菜单增加新项) 在编辑器修改`comment.js`:现场发readFile请求读文件,然后开脚本编辑器进行编辑 -+ [ ] ? 删除注册项/修改图块ID ++ [x] ? 删除注册项/修改图块ID + [ ] ? 怪物和道具也能像其他类型那样查看“图块信息”(而不只是具体的怪物属性) -+ [ ] 素材区自动换列 ++ [x] 素材区自动换列 怪物或道具太多时, 按照每100个进行拆分新开列来显示 -+ [ ] 多帧素材只显示第一帧 ++ [x] 多帧素材只显示第一帧 -+ [ ] `显示文章`以及`选项`等方块, 把`标题`和`图像`从字符串提取出填回相应的空 ++ [x] `显示文章`以及`选项`等方块, 把`标题`和`图像`从字符串提取出填回相应的空 -+ [ ] blockly中某些需要选点的填空, 增加按钮, 点击后从缩略图中点击位置 ++ [x] blockly中某些需要选点的填空, 增加按钮, 点击后从缩略图中点击位置 + ++ [ ] 插件编写增加判定,如果保存时框内不是以 "function\s*()" 开头(也就是用户直接写的脚本),则自动添加一个 function() { } 将代码包装起来。 ## 左侧页面模式