3.9 KiB
地图编辑器使用说明
地图编辑器
UI界面分为3个区域,左侧的编辑区,中间的画布区,右侧的素材区,以及两个弹窗形式的分别是事件编辑器和文本编辑器.
画布区下方有切换地图和编辑器模式的下拉菜单,点击保存地图后画布的内容才会写入到文件中.同时一个显示信息的tips区.
在素材区点击图块时,会选中该图块,此时tips会显示该图块的信息,编辑区会进入图块属性模式,怪物或物品可以直接在里面编辑数值.如果地图的数字和ID未被定义,可以在左侧定义,定义新图块需要刷新才能生效.
在tips中有图块信息时,在画布上点击或拖拽可以把图块画上去,可以使用ctrl+Z撤销操作以及对应的ctrl+Y恢复撤销.擦除方块可以使用素材区最左上角的擦除块.
点击界面中的空白,tips中的图块信息会被清空,此时再点击画布上的点,编辑器会进入地图选点模式.此时可以编辑改点的events,afterBattle,changeFloor等事件或者是canMove来改变各方向的通行状态.
切换地图会使编辑区进入楼层属性模式,这里可以修改首次到达该楼层时会触发的事件firstArrive,楼层显示的名称,默认的前景背景图片,默认天气和色调,是否允许使用快捷商店等等.注:这里不允许编辑楼层的ID,需要修改ID的场合请直接改js文件,并保持注释中的三个标识符一致.
全塔属性中编辑整个塔为单位的属性,例如起始剧情startText,塔的ID,提供哪些难度,主角的起始属性起始道具,全局商店,各种数值以及系统FLAG.创建新塔时需要认真编辑这里面的所有选项.
脚本编辑模式可以修改常用的需要更改的函数.例如,给不同的难度设置不同的内容,加点,推箱子达成后的触发,以及修改游戏中的关于界面.
追加素材模式可以导入一个图片到该标签的画板中,然后依次点击画板中的图块,点追加就可以按顺序把这些图片添加到对应的画布区素材的最下方,需要刷新来生效.
地图编辑模式中可以导入来自地图生成器的地图数组,同时创建新楼层需要在这里通过另存为来实现,可以点清除地图把另存为出的新楼层清空.
编辑区的表格可以直接修改,推荐通过双击,在事件编辑器和文本编辑器中进行编辑.编辑区中的修改需要点保存才会生效.
事件编辑器
地图选点中的表格,以及楼层属性中的firstArrive和全塔属性的startText,在双击时会进入事件编辑器,是由antlr-blockly生成的图块式的可视化编辑器.
把左侧的方块拖到面板中,下方就会实时的显示对应的js的代码(以及数值不正确时的提示).
每个方块点击右键会展开一个菜单,点帮助可以跳转到此文档中对应的内容.利用好复制功能可以极大提高编辑的效率.注释选项请不要使用,编辑器并不会保留这里的注释.
template中提供了一些模板事件,例如战前剧情,打怪开门.
显示文章的两个方块,以及自动剧情文本,选项和自定义JS脚本这5个方块,可以通过双击方块,在文本编辑器中(以多行的方式)编辑其中的文字.
文本编辑器
事件编辑器之外的内容双击后由文本编辑器来编辑,是有js高亮支持的多行文本编辑器CodeMirror,点confirm即可使编辑的文本替换到表格中
拓展地图编辑器
面向有一定编程基础的用户
修改project/下的*comment.js可以让地图编辑器对自己添加的属性有更好的支持.例如:
- 给
comment.js中enemys加入新的键值对,就可以更方便的给怪物在UI界面中添加对应的值. - 在
data.comment.js中把自己添加的内容标记为叶节点,不再在表格中展开到最末端.
地图编辑器的部分API见_server/README.md