资源描述:
《地图编辑器设计文档》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、学士后Android工程师就业冲刺阶段项目忍者突袭项目(地图编辑器)详细设计书编写人:北大青巧编写HUM:2014年6月文档修订记录序号修改人市核人修改円期备注1231.文档介绍1.1.文档目的提供地阁编辑器的洋细设汁,对P期的代码丌发提供相关的指导和约束。预期读者:游戏分析人员和开发人员。1.2.文档范围木详细设计书主要是描述地图编辑器的具体实现,涉及的范W有:图形模块逻辑模块2.程序系统结构2.1.程序划分序号模块名称主要功能1图形模块提供编辑地阁的没计窗口2逻辑模块根据窗口中的地图设计生成地图文件1.图形模块3.1.需求概述第一阶段的主要功能是实现地阁编辑器的编辑窗U3.2.功
2、能描述提供一个编辑窗口,进行地阁的编辑,编辑窗口上方有一个菜单栏,可以选择菜单柁中的菜单项使用各功能。可以新建地阉、载入阉元、生成地阁文件、编辑或者删除、生成单元格等。如下图所示:地I冬I编辑器示意I冬I3.2.1.主要使用类描述包名类说明com.xzh.mapeditorMapEditor.java生成窗口的主体结构com.xzh.mapeditorLineDialog.java生成网格时弹出的对话桐com.xzh.mapeditorEditPanel.java设置每个窗口的背景划线3.2.2.程序实现MapEditor.java炎:initMenu力‘法:加载菜雄,设置编輯模或选
3、项姐initLayont方法:设置主界面布局,设置滚动条敁大、敁小刻度,设置监听器。EditPanel类:paint方法:没®窗1_1背贵,划网格线LineDialog炎:initPane方法:初始化对话框中显示的内容actionPerformed方法:对点街事件进行处理3.2.3.其他说明S乐模块是使用java中的Swing变现的,主要有一个编輯窗口和一个JS示窗口。示窗口显示地图中的阁片元素,编辑窗口可以编辑地阁。1.逻辑模块4.1.需求概述逻辑模块主要处理显示把图R元素添加到编辑脔u指定位置,读取图什元素和牛.成地图文件等。4.2.主要使用类描述包名类说明com.xzh.map
4、editorMapEditor.java生成窗口的主体结构4.3.程序实现MapEditor炎:onOpenElement方法:从工程中的res目录卜读取阁片文件,把阁片加载到显示窗□。onLoadElement方法:从element文件夾卜读取配H文件,根掘配置问价加载阁片。onMapFormat方法:地图格式另存onSaveDialog方法:弹出保存地图文件对话框onMapSavc方法:保存地图文件mouseClicked方法:获取鼠标点击事件,根据点击事件位置,放置阁片addLabel方法:添加图片少标和图片类型到List中。checkMain方法:判断是主图元还是依附阁元ch
5、eckPaste方法:判断两张图是否可以贴到一^起showActiveLabel方法:显示当前editpane部分需要显示的labelrestoreTemp.Map方法:未存储就退出,默汄存储为temp4.4.其他说明地图文件屮的信总存储格式为:X,y,t,l&x,y,t;X,y,t;#x,y,t,1o地图存储吋,主要以x轴为主线,先存储在x轴上來标不会重叠的图元作为x轴的主图元,在NinjaAdvcnture游戏屮我们采用桥面和吊杆图元作为主图元;而另外的道其、桥墩、npc等,我们都根据其x轴坐标将其依附于主阁元存储,将其存储在主阁元后而,依附的主耍根据是与主阁元在x轴坐标上重叠或
6、距离远近。在存储格式屮,x、y主要代表图元的x轴与y轴的少标,t代表图元种类(川了什么图),1代表主图元长度,‘的含义是主图元与依附图元的区分间隔符,’的含义是依附閔元之间的间隔符(一个主图元可能冇多个依附图元,如一段桥上即冇道具又冇npc),‘代表两个主閔元之间的间隔符。下衡是一段地图数裾的示例:30,270,1J^30J07,?#49r270,2r278USO,200,1:200,180,2#327,270;3,15(315,307,7#00,30,U3miM0,5,20«5M,ISO,17(0830,270,1,194830,307,7#849,270,2,278(849,21
7、4,5赛1127,270,3,15S1115,307,7#
8、5.单元测试方案5.1.横块一:读取图片測试測湖号1功能描述读取阁片測试要点地阁编辑器的加栽地阁元紊功能测试方法点击文件今打开图元或加栽图元期望结果在显示说U显示地阁元东5.2.模块二:生成地图文件測雌号2功能描述生成地阁文件測试要点地阁编辑器的生成地阁文件功能測试方法点击生成4另存为或保存期望结果生成地阁文件