骑士进化论RPG游戏实现
前言
这是第一次使用java语言和Myeclipse集成开发环境进行多人协作开发一款小游戏,其实,我之前就想让多个人开发一个小程序或软件。毕竟,以后到公司去,开发任何的软件都不是一个人能完成的,如何从现在开始就锻炼大家的团结协作的能力显得非常重要,如果能将多个人的力量有效地整合,就能实现1+1大于2的效果,否则,就无法进行软件的开发。即使一个人的能力很强,如果不能学会与人协作,在这样的社会恐怕不能够生存下去。
本次开发的游戏是RPG(角色扮演)游戏,这样的游戏我们经常见到。本来老师要求是文字版的RPG,我想尽量接近通常玩的那种游戏,尽量少使用文字,当然,如果以目前的知识无法实现的,可以用文字来描述。我们应该以高标准来要求自己,这样才能真正的锻炼自己。
1. 任务分工:(暂定)
张XX(组长):负责整体的架构设计及主游戏模块。
房X(组员):跑步模块及游戏介绍模块。
南XX(组员):智力闯关模块及帮助模块。
白X(组员):飞镖模块及地图模块。
2. 对所有成员要求:
1).小组成员必须按时完成各自的任务。
2).设计上与技术上有问题的先自行解决(看书、上网查),如不能解决的集体讨论解决。有其它的问题及时提出来!
3).必须写文档(写把各自模块的整体设计用UML图或Viso画的图(尽量不要只是简单的语言叙述)表达出来),学会用面向对象的思想来来设计,采用模块化的思想分解模块。(设计原则与设计模式能用的用)
4)每个类必须有类说明,每个函数也必须有函数说明,函数的具体设计也必须有必要的注释。
5)如果不能遵守规定或要求的可以提前退出,不强留。
(注:即使不会写代码,也没关系,只要一能用UML图或其他的图等表达出自己的设计思想及具体的实现设计也行)
3. 说明:
运行环境:Myeclipse集成开发环境,jdk 1.6版本。
使用语言:Java语言。
版本控制:SVN进行版本控制。
代码管理:Google Code 进行上传下载以实现多人同时开发。
一、需求分析:
1.1游戏背景:
时代:剑与魔法的中古骑士时代。
国家:神圣的卡拉斯王国。
社会结构:卡拉斯王国是由多数农民和少数骑士所组成的王国,因此没有和魔王对抗的能力,
背景介绍:
卡拉斯王国的统治者是现任的国王卡拉斯七世,但由于由于受到魔王的危害,使得王国受到了威胁,整个王国实际上被魔王控制,小公主已经在上一次魔王手下的来袭时被抓走了。
一天,在一个残破的村庄,一名有名骑士的妻子生了四个孩子,三个男孩,一个女孩,据村里人说:这四个孩子可能是神之子,他们从小就各个力大无比、与众不同。他们分别是:
人物角色:恶灵骑士、幻影骑士、火龙骑士、玉女骑士。
当他们长到十几岁时,父母告诉他们整个王国都被魔王所控制,国王和公主都被软禁。于是,他们立志要打败魔王,拯救自己的国家。
但他们现在年纪还小,且实力还无法与魔王抗衡。
必须先进行训练(跑步、智力闯关、飞镖练习),获得一定的体力值、智力值及武艺值后,才能出去征战,夺回被魔王占领的土地。要想打败魔王,必须先取得传说中的勇者之剑及勇者之铠。勇者之铠被放置在大陆西边的神殿里,那里已经被魔王的部下所占领了;勇者之剑则要取得大陆南边火山里的金属,再交给老铁匠来打造,老铁匠被魔王绑在大陆东边的暗室里。骑士先来到大陆西边的神殿,打败了占领此地的魔王手下,取得了勇者之铠。接下来南边的火山,在通过了迷宫洞窟的考验后,找到了可以打造勇者之剑的神秘金属。带着神秘的金属去解救被绑的老铁匠,将神秘金属交给他,就可以打造出勇者之剑。有了勇者之剑和勇者之铠之后,前往魔王的宫殿与魔王展开决战,在打败了魔王救回公主后,使王国恢复了和平,而骑士也和公主结婚成为下一任的国王。
1.2游戏设置:
可选人物角色:恶灵骑士、幻影骑士、火龙骑士、玉女骑士。
人物成长等级:0-13。
普通装备:铠甲、盾牌、头盔、战靴、利剑、魔刀等。
(这些装备可以在店铺使用金币购买)
特殊装备:勇者之剑、勇者之铠。
生存值:体力值(血量)、智力值(防御力)、武艺值(攻击力)。
(体力值越高,血量越多;
智力值越高,防御力越高。
武艺值越高,攻击力越高)
训练内容:跑步(获得血量值)
智力闯关(获得防御值)
飞镖练习(获得攻击值)
地图:大陆西边(放着勇者之铠)
大陆南边(铸造勇者之剑的金属)
大陆东边(铸剑师)
大陆北边(魔王的的宫殿)
地图如下:(找个游戏地图)
1.3功能需求:
A.任务整体分为两大块:
1) 训练阶段(跑步、智力闯关、飞镖练习)。
2) 征战阶段(到西边获取勇者之铠、到南边获取铸造勇者之剑的金属、到东边解救铸剑师、到北边大战魔王)。
B.设计需求:(单机版窗体显示)
1)显示各模块的窗体设计。
2)读文件或读数据库中数据的模块设计。
3)加载音乐的模块。
4)不同人物及资源类的设计。
C.用例图:
D.功能模块图:
二、总体设计
1.架构设计
A. 包UI(视图、界面层):只负责界面的显示。
B. 包Business(业务逻辑层):核心业务的处理。
C. 包DataAccess(数据访问层):读写数据。
2.业务处理流程图:
3.UML图
MVC架构图:
A. 主模块设计:
三、详细设计
1.UI包:
(1).CommonFrm类:
公共窗体,其他窗体都继承自它,保持窗体的一致性,其设置了窗体的大小和显示位置。
(2).JMainMenuFrm类:
显示游戏主菜单,包括:新建游戏、加载游戏、游戏设置、游戏帮助及退出按钮。
(3)JPlayGameFrm类:
主游戏显示窗口,主要显示游戏。
(4)JLaborTrainFrm类:
体力训练模块(跑步)界面。
(5)JIntelligenceTrainFrm类:
智力训练界面(走迷宫)界面。
(6)MartialArtsTrainFrm类:
武艺训练(射击)界面。
(7)JSettingFrm类:
游戏设置界面。
(8)JSkillTraining类:
选择开始主游戏还是个训练的界面。
(9)JGameDescription类:
游戏简介。
2.Business包
A.输入管理包(Business.input)
(1).InputManager类:负责主游戏的键盘输入处理。
构造方法摘要 |
|
|
|
|
|
|
|
方法摘要 |
|
|
|
|
|
|
|
|
|
|
|
|
|
(1) RunKeyDown类:跑步模块的输入类
方法摘要 |
|
|
|
|
|
|
|
|
|
|
< |