基于Java的超级玛丽游戏的设计与实现答辩ppt
手机游戏的开发—超级玛丽的设计与实现JBUILDER
手机游戏的开发—超级玛丽的设计与实现JBUILDER 目录前言 1 1 相关技术介绍 2 1.1 J2ME介绍 2 1.2 手机游戏应具有的特征 2 1.3 开发环境 3 1.4 JAVA语言特点 3 1.5 关于JBUILDER xx 4 1.6 关于WIRELESS TOOL KIT 5 1.7 JAVA APPICATION MANAGER 5 1.8 本章小结 5 2 需求分析 6 2.1 功能需求分析 6 2.2 可行性研究 6 3 概要设计 8 3.1 本程序需要解决的主要技术问题 8 3.2 游戏的总体架构 8 3.3 程序的类结构 10 3.5 CANVAS类 13 3.6 GRAPHICS类 13 3.7 MIDP1.0技术下的绘制背景技术 13 3.8 MIDP2.0新增的GAMECANVAS包 14 3.9 PNG图片格式 14 3.10 内存检测器 15 3.11 关于混淆器 15 3.12 本章小结 15 4 详细设计及实现 16 4.1 地图绘制的实现 16 4.2 碰撞检测 17 4.3 键控处理的实现 19 4.4 主要人物玛丽的实现 21 4.5 乌龟的实现 26 4.6 菜单的实现 26 4.7 游戏的主CANVAS类的实现 28 4.8 本章小结 32 5 游戏的优化及注意点 33 5.1 游戏中屏幕绘制技术的优化 33 5.2 游戏中新对象的产生和垃圾收集 33 5.3 游戏优化中时间、空间的权衡 34 5.4 游戏中关于来电挂起和恢复处理的注意点 34 5.5 本章小结 35 6 总结36 6.1 小结 36 6.2 感想 36 参考文献 37 致谢 38手机游戏开发—超级玛丽的设计与实现摘要:在现在这个时候,手机中软件技术出现前所未有的成熟,各种工具都已经开始简单化并逐步完善,无线终端性能在不断提高,运行速度加快,传输能力加强,内存的增大,色彩、清晰度更高,终端价格的下降,以及彩屏手机用户的增长,使得中国手机游戏市场空前繁荣。
超级马里奥游戏编程实现
超级马里奥游戏编程实现超级马里奥游戏,作为任天堂公司发布的经典游戏之一,一直以来深受玩家们的喜爱。
本文将探讨超级马里奥游戏的编程实现,介绍游戏的基本结构与要素,并分享一些开发技巧与经验。
一、游戏的基本结构超级马里奥游戏是一个横板平台跳跃类游戏,玩家操控主角马里奥穿越各个关卡,完成任务并击败最终的大Boss。
在编程实现中,我们可以按照以下结构来构建游戏:1. 初始化游戏界面:包括创建画布、设置游戏窗口大小等。
可以利用现有的游戏引擎或者编程语言来实现。
2. 加载游戏素材:包括游戏角色、场景、音效等。
这些素材可以事先准备好,并在游戏初始化时进行加载。
3. 设计游戏关卡:包括地图设计、敌人设置、道具分布等。
地图可以通过瓦片地图来实现,敌人和道具则需要根据游戏规则进行编写。
4. 实现角色移动:包括角色的跳跃、奔跑、攀爬等动作。
可以通过监听玩家输入来实现角色的移动。
5. 设计游戏规则:包括碰撞检测、计分机制、生命值等。
需要编写相应的代码来判断碰撞情况,并调整相应的游戏参数。
6. 添加游戏元素:包括敌人、道具、障碍物等。
可以利用面向对象的编程思想来创建相应的对象,并设置其行为与属性。
二、编程实现的技巧与经验1. 合理利用游戏引擎:如果选择使用游戏引擎来实现超级马里奥游戏,可以大大减少开发工作量,并提高游戏的性能与稳定性。
例如,Unity引擎可以提供丰富的游戏开发工具和资源,有助于快速构建游戏框架和实现复杂的游戏机制。
2. 提前规划游戏要素:在编程实现之前,应该提前规划游戏的要素,包括关卡设计、角色属性、游戏规则等。
这样可以避免在开发过程中频繁调整游戏结构,提高开发效率。
3. 利用现有资源:超级马里奥游戏已经存在很多资源和素材,包括角色形象、音效、地图设计等。
可以从中借鉴和利用,减少自行设计素材的工作量。
4. 引入适当的难度和挑战:超级马里奥游戏的魅力之一在于其适度的难度和挑战性。
在编程实现中,可以通过合理设置敌人和障碍物的难度和分布,来增加游戏的挑战性,让玩家乐在其中。
超级玛丽JAVA小游戏详细设计文档
无关,需要表示层调用定义好的接口与逻辑层的通信 数据持久层。保存游戏中的数据,载入游戏中需要的资源,与程序逻辑层无
关,用 XML 文档存储数据
2.7 程序的三层结构图
表现层(绘制屏幕)
逻辑层(程序的逻辑)
数 据 持 久 层 ( 数 据 存4储 )
不同的操作; 查询记录:查询五个最高游戏分数,排名由上往下递减。 游戏设置(包括音乐设置和按键设置):玩家可以设置游戏进行时的音乐开
或关以及修改相应的控制键。
2.6 程序的总体架构
本程序采用 3 层程序架构,业务表现层,业务逻辑层和数据持久层。 业务表现层。主要是游戏界面的绘制,通过指定的接口绘制,与游戏的逻辑
private void walk()
//人物走的动作
private boolean checkTileCollisionVertical() //检查与地图的纵
向碰撞
private boolean checkTileCollisionHorizon() //检查与地图的横
向碰撞
private void fire() //发射子弹
地图,以提高游戏的运行速度 5) 居于多线程,实现进度条
2.2 游戏功能划分
游戏的基本功能应该包括菜单处理,程序逻辑处理,持久性处理和挂起恢复处理。 关于菜单的处理,包括可以选择的进入游戏、保存、帮助和音效开关等。 程序的逻辑处理就是涵盖了程序中除菜单外几乎所有的功能。 持久性处理就是资源的载入和游戏的进度保存。
private boolean checkSpriteCollisionVertical() //检查纵向与
超级玛丽详细设计文档
超级玛丽详细设计文档超级玛丽JA V A小游戏详细设计目录1.导言 ............................................................................................ 错误!未定义书签。
1.1编写目的 .................................................................... 错误!未定义书签。
1.2项目范围 .................................................................... 错误!未定义书签。
1.3参考资料 .................................................................... 错误!未定义书签。
1.4缩写说明 .................................................................... 错误!未定义书签。
1.5术语定义 .................................................................... 错误!未定义书签。
2.功能需求 .................................................................................... 错误!未定义书签。
2.1界面设计技术............................................................ 错误!未定义书签。
2.2游戏功能划分............................................................ 错误!未定义书签。
超级玛丽JAVA小游戏概要设计文档
目录1.导言 (2)1.1编写目的 (2)1.2项目范围 (2)1.3参考资料 (2)1.4缩写说明 (2)1.5术语定义 (2)2.任务概述 (3)2.1目标 (3)2.2开发环境 (3)2.3运行硬件环境要求 (3)3.功能需求 (3)3.1游戏功能划分 (3)3.2功能划分的架构图 (4)3.3具体的功能模块 (4)3.4功能描述 (4)3.5程序的总体架构 (4)3.6程序的三层结构图 (5)4.面向对象设计 (5)4.1用例图 (5)4.2顺序图 (6)4.3活动图 (6)4.4主要类图 (7)4.5各个模块的方法或类名类表示 (7)4.6地图绘制中的坐标说明 (8)5.运行需求 (8)5.1界面设计技术 (8)5.2硬、软件接口要求 (8)5.3故障处理 (9)6.其它需求 (9)6.1可扩展性要求 (9)1.导言1.1编写目的该文档的目的是说明超级玛丽游戏的功能和设计方向、目标等描述游戏项目的概要设计。
其主要内容包括:游戏项目的功能简介,接口设计,模块设计,界面设计。
本文档预期读者包括:项目管理人员,编程人员,数据库设计人员,美工,测试人员。
1.2项目范围该文档定义了游戏的模块,结构单元,但未确定单元的实现方法,这部分内容将在详细设计/实现中确定。
1.3参考资料《软件工程案例教程》机械工业出版社韩万江编著《J2ME手机游戏开发技术详解》清华大学出版社李振鹏龚剑编著1.4缩写说明UML:Unified Modeling Language(统一建模语言)的缩写,是一个标准的建模语言。
1.5术语定义MIDP2.0定义:MIDP2.0也叫MIDP_NG,它的编号是JSR118。
MIDP2.0与1.0相比有很大提高,增加的特性包括:提供域安全模型,以允许对应用程序进行签名和论证;提供TCP、UDP网络接口;内置OTA;更好的用户界面;基本的声音API。
2.任务概述2.1目标实现超级玛丽游戏的主要功能,主人翁可以吃到蘑菇变大,吃到花可以发射子弹,有的水管可以下去,可以踩到乌龟,可以顶破砖块,实现大家熟悉的基本功能。
java超级玛丽基于Android的超级玛丽游戏最终作业
目录一、可行性分析 51.引言 51.1编写目的 51.2项目背景 51.3定义 51.4参考资料 62.可行性研究的前提 62.1要求 62.2目标 62.3条件、假定和限制 72.4可行性研究方法 72.5决定可行性的主要因素 73.对现有系统的分析 73.1工作负荷 73.2费用支出 73.3人员 73.5 局限性 (7)4.所建议技术可行性分析 84.1对系统的简要描述 84.2与现有系统比较的优越性 84.3采用建议系统可能带来的影响 84.5技术可行性评价 95.社会因素可行性分析 95.1法律因素 95.2用户使用可行性 96.其他可供选择的方案 10二.需求规格说明书 101.引言 101.1编写目的 101.2项目背景 101.3定义 111.4参考资料 112.任务概述 12 2.1目标 122.2运行环境 12 3.数据描述 123.1数据库介绍 12 3.2数据词典 12 3.3数据采集 12 4.功能需求 124.1功能划分 12 4.2功能描述 12 5.其它需求 135.1安全性要求 13 5.2一致性要求 13 5.3完整性要求 13 6.运行需求 136.1用户界面 13 6.2硬件接口 136.3软件接口 136.4故障处理 (13)7.其它需求 14三、面向对象分析 141、用例图 141.1、用例图 141.2、用例叙述 142、时序图图 153、类图 18四、概要设计说明书 191.引言 191.1编写目的 191.2项目背景 191.3定义 191.4参考资料 202.任务概述 202.1目标 202.2运行环境 202.3需求概述 202.4条件与限制 203.总体设计 203.1处理流程 203.2总体结构和模块外部设计 20 3.3功能分配 214.接口设计 224.1外部接口 224.2内部接口 225.数据结构设计 235.1逻辑结构设计 235.2物理结构设计 235.3数据结构与程序的关系 23 6.运行设计 236.1运行模块的组合 236.2运行时间 237.出错处理设计 23 7.1出错输出信息 237.2出错处理对策 23五、详细设计说明书 24 1.引言 241.1编写目的 241.2项目背景 241.3定义 241.4参考资料 242.总体设计 242.1需求概述 242.2软件结构 253.程序描述 253.1登录模块 253.2测试要点 26一、可行性分析1.引言1.1编写目的可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解。
超级玛丽java游戏课程设计
超级玛丽java游戏课程设计一、课程目标知识目标:1. 学生能够理解Java编程语言的基本语法和结构,掌握面向对象编程的基本概念。
2. 学生能够运用Java编程实现游戏界面设计、角色控制、碰撞检测等基本功能。
3. 学生了解游戏开发中的坐标系统和动画原理,并能够将其应用于超级玛丽游戏设计中。
技能目标:1. 学生掌握使用Java编写程序的方法,培养编程思维和解决问题的能力。
2. 学生能够运用面向对象的设计思想,设计出结构清晰、可维护性强的游戏代码。
3. 学生通过团队协作,学会使用版本控制工具,提高项目管理和团队协作能力。
情感态度价值观目标:1. 学生培养对编程和游戏开发的兴趣,激发创新意识和探索精神。
2. 学生在项目实践中,增强自信心,培养面对困难和挑战时的积极态度。
3. 学生通过团队协作,学会尊重他人意见,培养良好的沟通能力和团队精神。
课程性质:本课程为实践性较强的课程,结合Java编程语言和游戏开发技术,使学生能够在实际操作中掌握编程知识和技能。
学生特点:学生处于初中或高中年级,具有一定的计算机操作基础,对游戏开发感兴趣,具备一定的逻辑思维能力。
教学要求:课程注重理论与实践相结合,强调动手实践,引导学生通过自主学习和团队协作完成游戏设计项目。
在教学过程中,关注学生的个体差异,鼓励学生提问和分享,提高学生的综合素质。
通过课程学习,使学生在知识、技能和情感态度价值观方面取得具体的学习成果。
二、教学内容1. Java基础语法:变量、数据类型、运算符、控制流程(条件语句、循环语句)、数组等基本概念。
2. 面向对象编程:类与对象、构造方法、继承与多态、接口与实现等。
- 相关章节:课本第3章至第5章。
3. Java图形用户界面(GUI):Swing库的使用,窗口、标签、按钮、文本框等组件的创建与应用。
- 相关章节:课本第7章。
4. 游戏设计基础:- 坐标系统与动画原理:游戏中的坐标系,帧动画原理。
- 碰撞检测与角色控制:矩形碰撞检测,角色移动、跳跃等控制逻辑。
超级玛丽小游戏设计毕业设计
摘要《超级玛丽》全名《超级马里奥兄弟》,是任天堂公司出品的著名横版过关游戏,最早在红白机上推出,有多款后续作品,迄今多个版本合共销量已突破4000万套。
其中的主角马里奥、路易、桃子公主、蘑菇王子等等已成为任天堂的招牌人物。
该课题主要是模仿经典的《超级玛丽》完成相应的游戏功能。
本游戏以java为主要技术核心,通过各种核心类实现了游戏中的主要人物和角色,并通过各类函数实现了地图的绘制、碰撞检测、键控、滚屏等核心功能,并对游戏进行了一系列优化,例如产生新对象,收集垃圾,对时间、空间的权衡,实现了电脑版的超级玛丽。
关键字:超级玛丽;Java;碰撞检测;滚屏Abstract"Super Marie" full name "super Mario Bros." version of the cross, is a famous Nintendo Co produced the pass of the game, the first introduced in red and white machine, there are a variety of subsequent works, so multiple versions of total sales have exceeded 40000000 sets. One of the main characters Mario, Louis, Princess Peach, mushroom Prince has become Nintendo sign characters. The main issue is to imitate the classic "super Marie" to complete the corresponding game function. This game is the main core technology in Java, through a variety of core class implements the main characters and the characters in the game, and implements map rendering, collision detection, key control, scrolling and other core functions through various kinds of function, and the Games were a series of optimization, such as creating a new object, garbage collection, to balance time, space, achieve 1 computer version of super Marie.Key words: Super Marie ,Java, Collision detection ,Roller screen目录1. 绪论 (1)1.1 java介绍 (1)1.2 超级玛丽游戏的历史 (1)2. 基本概要 (2)2.1 游戏应用环境的构建 (2)2.1.1游戏需要的硬件环境 (2)2.1.2游戏需要的软件环境 (2)2.2 操作 (2)2.3 游戏界面 (2)3. 系统分析 (4)3.1 本程序需要解决的主要技术问题 (4)3.2 游戏的总体构架 (4)3.3 程序的类结构以及流程图 (5)3.3.1 类结构 (5)3.3.2 流程图 (6)4. 详细设计及实现 (7)4.1 地图的实现 (7)4.1.1地图的结构 (7)4.1.2约定规则 (7)4.1.3地图的产生 (8)4.2 滚屏的实现 (9)4.2.1原理 (9)4.2.2地图内部对象的移动 (9)4.2.3小结 (9)4.3 地图切换的实现 (9)4.4 碰撞检测 (10)4.4.1原理 (10)4.4.2碰撞检测在游戏中的应用 (10)4.5 玛丽以及键控处理的实现 (10)4.5.1 Mario类的实现 (11)4.5.2键控处理 (12)4.6 砖头的实现 (12)4.6.1分类 (12)4.6.2结构 (13)4.7 敌人的实现 (13)4.7.1分类 (13)4.7.2结构 (14)4.8 重力模拟 (15)5. 游戏的优化及注意点 (16)5.1 游戏中屏幕绘制技术的优化 (16)5.2 游戏中新对象的产生和垃圾收集 (16)5.3 游戏对系统资源占用的优化 (17)6. 总结 (18)参考文献 (20)致谢 (21)附录 (22)1.绪论1.1java介绍Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE, JavaME, JavaSE)的总称。
超级玛丽JAVA小游戏测试报告文档
超级玛丽JAVA小游戏测试报告文档目录1.导言 (2)1.1编写目的 (2)1.2项目范围 (2)1.3参考资料 (2)1.4缩写说明 (2)1.5术语定义 (2)1.6版本更新信息 (3)2. 测试设计 (3)2.1测试要点 (3)2.2测试时间、地点、人员 (3)2.3测试覆盖设计 (4)2.4测试环境描述 (4)2.5功能测试执行情况 (4)2.6界面测试 (8)2.7测试进度度量 (8)2.8测试工作量度量 (8)2.9.1测试任务评估 (9)2.9.2测试对象评估 (9)1.导言1.1编写目的该文档的目的是描述超级玛丽JA VA小游戏的系统测试的总结报告,其主要内容包括:系统环境的介绍、功能的实现的测试、系统结果评估。
本文档预期读者包括:开发人员,项目管理人员,测试人员。
1.2项目范围该文档定义了对超级玛丽游戏的主要功能,主人翁可以前进、后退、跳跃、吃到蘑菇变大、可以踩到乌龟、可以顶破砖块、等功能的实现情况以及项目的运行的测试。
1.3参考资料《LoadRunner使用手册》北京长江软件有限公司出版社编制《超级超级玛丽JA VA小游戏概要设计文档》《软件测试技术概论》古乐史九林遍著/清华大学出版社《软件测试:第二版》Paul.C.Jorgensen 著/机械工业出版社1.4缩写说明无1.5术语定义功能性测试:按照系统需求定义中的功能定义部分对于系统实行的系统级别的测试;非功能性测试:按照系统需求定义中的非功能定义部分对系统实行系统级别的测试;测试用例:测试人员设计出来的用来测试软件某个功能的一种情形。
1.6版本更新信息修改编号修改日期修改后版本修改位置修改内容概述000 2012.6.10 1.0 全部初始发布版本2.测试设计2.1测试要点被测特性:●对软件进行功能性测试●对软件进行非功能性测试不被测特性●源代码,逻辑等;●模块的接口,模块的错误处理,模块的局部数据结构,模块在执行时执行的独立路径,模块在处理边界值时的情形;●单元(模块)之间的可用性等2.2测试时间、地点、人员本次测试的时间,地点,人员总结如下。
超级马里奥 java
1、游戏内容简介在很多年以前,红白机FC的超级马里奥兄弟是当时的游戏中的颠峰之作,套用当时最流行的一句话就是操作感和平衡性几乎完美无暇。
这里完成的 MLDN马里奥参考的就是这款游戏的设定,对游戏的背景、人物、敌人等重新绘制,并加入了一些恶搞的元素。
2、游戏操作游戏通过键盘操作,键盘上的箭头“” 和“” 分别控制Mario的移动,空格键控制Mario的跳跃,通过以上的简洁的操作完成整个游戏。
3、游戏中的设定开始游戏时,Mario会有3条生命,消灭敌人或顶一些物品可以得到分数,每到500分会增加一条生命,如果Mario被敌人杀死或是掉下悬崖,会失去一条生命,并从该版面重新开始游戏,如果Mario的生命数为0,则游戏结束,返回标题画面重新开始游戏。
游戏中有一个秘技,在游戏的开始画面通过键盘输入一些内容可以使Mario的生命数增加到30条。
4、游戏中的物品介绍砖块:被Mario顶到会消失,Mario可以获得10分的分数,其中有些砖块在Mario从上边经过的时候会消失。
水管:在水管中一般会有食人花,如果Mario被花碰到会损失生命。
?:被Mario顶到会变成无法破坏的铁块,同时Mario可以获得50分的分数。
铁块:一般是从?变化过来的,不会被Mario破坏透明?:在游戏中,某些地方会有隐藏的?,o顶到会变成无法破坏的铁块,同时Mario可以获得50分的分数。
5、游戏中的敌人介绍三角(蘑菇):会缓慢的左右移动,可以被Mario踩死,每消灭一个Mario可以获得50分的分数。
乌龟:比三角的移动速度稍快,可以被Mario踩死,每消灭一个Mario可以获得100分的分数。
食人花:在水管中出现,无法被Mario消灭。
代码介绍1、代码通过面向对象的设计思路,将系统分为Mario,物品,敌人,背景,窗体显示等多个Java类,共1600多行代码,运用了Java的Swing、IO操作、线程、类集等技术,并完全按照Java编码规范进行命名和编写。
超级玛丽--Java课程设计
《面向对象程序设计》课程设计报告题目:超级玛丽软件的设计与实现院(系):信息科学与工程学院专业班级: 计算机科学与技术1201班****: **学号: ***********指导教师:**20 14 年 12 月 29 日至20 15 年 1 月 9 日华中科技大学武昌分校制面向对象程序设计课程设计任务书目录1需求与总体设计 (5)1.1需求分析 (5)1。
2程序功能图 (5)1。
3程序类图 (6)2详细设计 (7)2.1 MyFrame实现 (7)2.1。
1窗体对象的序列图 (7)2。
1.2 Myframe详细类图 (8)2。
2 Mario实现 (8)2。
2。
1 Mario对象的序列图 (8)2.2。
2 Mario类图 (9)2。
3 Enemy类的实现 (10)2。
4 Obstruction类的实现 (11)2.5 BackGround类实现 (11)3编码实现 (12)3。
1 MyFrame类的详细代码......................................................................................... 错误!未定义书签。
3。
2 BackGround类的详细代码................................................................................... 错误!未定义书签。
3.3 Mario类的详细代码............................................................................................... 错误!未定义书签。
3。
4 Enemy类的详细代码............................................................................................. 错误!未定义书签。
java超级玛丽基于Android的超级玛丽游戏最终作业
目录一、可行性分析 (5)1.引言 (5)1.1编写目的 (5)1.2项目背景 (5)1.3定义................................................................................错误!未定义书签。
1.4参考资料 (6)2.可行性研究的前提 ............................................................. 错误!未定义书签。
2.1要求................................................................................错误!未定义书签。
2.2目标 (6)2.3条件、假定和限制 (7)2.4可行性研究方法 (7)2.5决定可行性的主要因素 (7)3.对现有系统的分析 (7)3.1工作负荷 (7)3.2费用支出 (7)3.3人员 (7)3.5局限性 (7)4.所建议技术可行性分析 (8)4.1对系统的简要描述 (8)4.2与现有系统比较的优越性 (8)4.3采用建议系统可能带来的影响 (8)4.5技术可行性评价 (9)5.社会因素可行性分析 (9)5.1法律因素 (9)5.2用户使用可行性 (9)6.其他可供选择的方案 (10)二.需求规格说明书 ................................................................. 错误!未定义书签。
1.引言........................................................................................ 错误!未定义书签。
1.1编写目的........................................................................错误!未定义书签。
Java课程设计报告-超级马里奥游戏的设计与开发
超级马里奥游戏的设计与开发目录1.课程设计要求.................................................. - 2 -1.1课设题目................................................. - 2 -1.2课设目的................................................. - 2 -1.3开发环境................................................. - 2 -1.4课设内容................................................. - 2 -1.4.1游戏介绍........................................... - 2 -1.4.2开发流程........................................... - 4 -2.设计过程...................................................... - 5 -2.1总体设计................................................. - 5 -2.1.1所用类的设计....................................... - 5 -2.1.2功能设计........................................... - 5 -2.2详细设计................................................. - 5 -2.2.1窗体的设计......................................... - 6 -2.2.2游戏场景的开发..................................... - 6 -2.2.3障碍物的开发....................................... - 6 -2.2.4将障碍物添加到场景中去............................. - 7 -2.2.5马里奥的开发....................................... - 7 -2.2.6将马里奥对象加入到窗体中........................... - 8 -2.2.7将马里奥与障碍物进行设置........................... - 8 -2.2.8敌人的开发......................................... - 9 -2.2.9敌人放到场景中..................................... - 9 -2.2.10其他游戏相关..................................... - 10 -3.具体实现..................................................... - 10 -3.1窗体类.................................................. - 10 -3.2马里奥类................................................ - 11 -3.3场景类.................................................. - 14 -3.4障碍物类................................................ - 15 -3.5敌人类.................................................. - 15 -4.调试过程..................................................... - 17 -4.1系统测试................................................ - 17 -4.2出现的问题和解决的方法.................................. - 19 -5.小结......................................................... - 20 -6.参考资料..................................................... - 20 -1.课程设计要求1.1课设题目超级马里奥游戏的设计与开发1.2课设目的《Java程序设计》课程是网络工程专业的一门专业必修课程,特针课程进行为期两周的实践教学,旨在提升本专业学生对此课程中的理论知识的综合应用能力、提高学生的逻辑思维能力、软件开发能力。
超级玛丽游戏设计(java)
Java程序设计实验报告专业:嵌入式工程技术年级:2012姓名:黄泽康学号: 20125003指导教师:贺伟阿坝师专物理与电子科学系Java编程超级玛丽的游戏设计题目简介:本游戏是利用java语言在JCreator Pro和jdk的环境下,经过两个星期的编写与调试完成的一个超级玛丽游戏。
本游戏代码长度约3000行,编写过程中历经两个版本(V1.0 版大约2000行代码、V2.0 版大约3000行代码)。
V1.0版本用时一个星期,V2.0版本用时一个星期,此游戏操作简单、界面美观、功能基本较齐全。
整个游戏分功能类模块,约实现了超级玛丽游戏经典版的所有功能的 80%。
一、实验目的:1、熟悉类和了解如何创建类,对创建的类进行测试。
让我们更加了解学习面向对象设计的目的和作用;2、了解java面向对象编程设计与C语言、C++编程的区别;3、学会使用各种程序命令、了解各种包的作用和功能,从而设计图形界面等;4、掌握java面向对象中的各种使用语句;5、学会设计和编写简单的程序或游戏。
二、实验原理、要求及主要设计思想:原理:利用建立的各种类和包的调用来实现各自的作用,并且实现游戏编写的效果。
设计要求:实现一个简单的超级玛丽游戏程序的基本要求:①在二维平面里画出地图(道具、敌人等)、玛丽,根据超级玛丽的动作和高度在确定地图的高度,并且还要对人的动作进行设计,;②玩家能通过控制按键A左走、D右走、L大跳、J小跳、K发子弹等来控制玛丽的动作;③在游戏中添加声音效果,如:游戏进行的声音、玛丽吃金币的声音、玛丽撞墙的声音、玛丽发子弹的声音、玛丽死亡的提示音等等;④玛丽游戏界面上有文件(退出游戏、打开地图)、游戏(暂停、开始、新游戏)、工具(自定义地图)、帮助(关于、使用说明)的菜单,并且在每个子菜单上添加特定的标志;设计思路:1、首先设计游戏主界面、游戏界面上的控制菜单,控制菜单包括:文件、游戏、工具、游戏帮助。
文件、游戏等菜单又包含了以下子菜单:文件:单击打开地图,就可以选择已创建好的地图关卡;单击退出游戏,就直接退出整个游戏主界面。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2011届本科生毕业论文答辩
导 师: 2015年6月8日
摘要
近年来,Java作为一种新的编程语言,以其简单性、可移植性和平台无关性等 优点,得到了广泛地应用。J2SE称为Java标准版或Java标准平台。J2SE提供了标 准的SDK开发平台。利用该平台可以开发Java桌面应用程序和低端的服务器应用程 序,也可以开发Java Applet程序。
3.界面设计需求分析
1) 选取和谐Q版的图片,使画面色彩和谐自然。 2) 固定游戏界面大小与初始显示位置。 3) 游戏采用900*600像障碍物分割成多个60*60的小正方形。
系统概要设计
1.设计目标
本软件是针对超级玛丽小游戏的JAVA程序,进入游戏后首先按空格键 开始,利用方向键来控制的马里奥的移动,同时检测马里奥与场景中的障碍 物和敌人的碰撞,并判断马里奥的可移动性和马里奥的生命值。当马里奥通 过最后一个场景后游戏结束。
2. 经济可行性
由于本系统使用到的工具一般机器都具备,使用环境也很简单,开发成本低, 本课题研究的内容是涉及网络的游戏对战。当今形式下网络游戏俨然已经成为年轻 人最时兴的消费方式之一,JAVA一直以来由于其可以“跨平台”以及“一次编译, 到处运行”等特点,许多人直接它为网络编程语言,且由于JAVA游戏一般来说简 单有趣,并且对用户硬件要求极小,所以JAVA游戏通常对85%的计算机用户都有 吸引力。且政府态度和政策都是一种信号,表明2005年对本土网络游戏的扶持力 度将加大;国内游戏厂商将可获得发展的核心技术平台;政策有利于保护中国游戏 软件的自主知识产权;这为网络游戏发展创造了良好的政策环境。
本系统主要是完成超级玛丽游戏的基本操作。本系统需要满足以下几点要求: (1) 在开始界面按空格键进入游戏。 (2) 利用方向键来控制马里奥的运动。 (3) 碰撞检测:
A.马里奥在运动的过程中如果碰到障碍物则停止运动,在移动到悬崖上方是会掉 下去,并失去一条生命。
B.对于有些敌人,如果马里奥跳到敌人头顶上,则敌人消失,否则马里奥失去 一条生命。 (4)马里奥顶到金币会增加分数,当马里奥失去3条生命时游戏结束。
2.3背景类
该类表示马里奥及障碍物和敌人所处的场景,并且将障碍物和敌人绘制到场 景中。在该类中包括用于存放敌人和障碍物的list集合,以及当敌人或者障碍物 被消灭后用于存放已经消失的敌人和障碍物的集合,这样做是为了在马里奥死亡 时重置场景所用的。其次在该类中还使用了控制敌人移动的方法,是为了在程序 之初控制敌人静止,然后在玩家点击空格以后在使得敌人开始移动。并且在第六 个关卡处设置了一个隐形通关要点,只有当马里奥顶到这个隐形砖块时才会出现, 马里奥就可以借助这个砖块通过关卡。
3.操作可行性
由于在整个系统的开发过程中从操作简便、界面美观、灵活实用 的用户要求为出发点,界面设计时充分考虑玩家的感受,界面比较直 观,交互性很好,所以操作起来简单明了。
需求分析
所谓系统分析,就是指在整个系统开发工程中,解决“做什么”的问题,把 要解决哪些问题,满足用户哪些具体的信息需求调查分析清楚,从逻辑上或是说 从信息处理的功能需求上提出系统的方案,即逻辑模型,为下一阶段进行物理方 案设计,解决怎么办提供依据。
“超级玛丽”游戏是一个经典的游戏,它因操作简单、娱乐性强而广受欢迎。 本游戏中通过总结和分析JAVA游戏的开发流程和代码功能的设计,采用面向对象的 设计模式,对游戏中的所有物体赋予对象的概念和属性。开发了一款超级玛丽游戏, 该游戏主要分为窗体类、场景类、马里奥类、敌人类、障碍物类等几个类。在主程 序运行的线程中,用户控制的超级玛丽随方向键的操作而移动,并且可以实现马里 奥游戏中的一些基本功能,例如踩死敌人或者顶掉砖块。本游戏采用双缓存技术, 解决了游戏过程中的闪屏问题。通过本游戏的开发,达到学习Java技术和熟悉软件 开发流程的目的。
2.2初始化类
用于存放游戏所需要的所有静态文件,在游戏开始的时候将所有文件导入,提 高游戏的运行速度。并且在该类中将所有需要用到的图片进行分类,分为障碍物类, 马里奥类,敌人类以及背景图片。当游戏运行时可以直接调用这些集合中的图片进 行遍历,在调用的时候更加方便,而且可以使马里奥或者敌人在移动的时候产生动 态效果。
可行性的分析
可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否 能够解决。要达到这个目的,必须分析几种主要的可能解法的利弊,从而判断 原定的系统规模和目标是否现实,系统完成后所能带来的效益是否大到值得投 资开发这个系统的程度。因此,可行性研究实质上是要进行一次大大压缩简化 了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统 分析和设计的过程。
1.用户需求分析
超级玛丽这款游戏是很多人童年经典的回忆,是一种简单的大众的游戏,自 从计算机实现以来,深受广大电脑玩家的喜爱。并且随着社会的快速发展,人们 的生活节奏越来越快,人们对于童年的美好已经不愿意仅仅停留在回忆阶段。所 以利用java语言开发一款超级玛丽游戏正是人们迫切需要的。
2.功能需求分析
2.系统模块设计
2.1窗体类
该类主要用于存放游戏的场景以及其他各类,并且实现KeyListener接口,用 于从键盘的按键中读取信息。该类中的一些属性主要包括了用于存放所有场景的list 集合 allBG,马里奥类 mario,当前的场景 nowBG以及其他一些游戏中需要的标 记等。而且在该类中,运用双缓存的技术使得游戏的流畅度更高,解决了游戏中出 现的闪屏问题。
1.技术可行性
本游戏是在Windows 7环境下开发的,一般的机器配置就可以了,对机器本 身没有太高的要求,一般当前学校或个人电脑完全可满足要求,环境只需装上 jdk 1.4或以上版本就行了,Java是现在全球最时髦的开发工具之一,它拥有一套庞 大且完善的类库,内置了其他语言需要靠库甚至是操作系统才能支持的功能,拥有一 个虚拟机。NeatBeans IDE 5.5是SUN公司开发的Java可视化集成开发工具,是目 前最优秀的Java集成开发工具之一。