《游戏毕业设计正文(精选范文)》由会员分享,可在线阅读,更多相关《游戏毕业设计正文(精选范文)(28页珍藏版)》请在金锄头文库上搜索。
1、目录第一章项目介绍. 1 1.1游戏概述. 1 1.2项目概述 . 1 1.3游 戏 背 景 故事. 1 1.4游戏进度表. 2 1.5运行环境 . 2 第 二 章游 戏 元素. 3 2.1游戏角色. 3 2.2游戏npc . 4 2.3游 戏 资 源 参数. 4 2.4游戏关卡 . 5 第 三 章系 统 设定. 6 3.1游戏流程图 6 3.2游 戏 界 面 的 简 介图. 7 3.3游戏主要类介绍 . 8 第 四 章游 戏 主 要 模 块 介绍. 9 4.1游戏背景加载模块. 9 4.2游戏 菜单界面模块 10 4.3游戏的游戏模块 11 4.4游 戏 退 出 界 面 模块 13 4.5游
2、戏 说明界面模块 14 4.6游戏 设置界面模块 15 第 五 章游 戏 程 序 主 框 架 实现 17 总结 . 20 参 考 文献. 21 第一章项目介绍1.1游戏概述打地鼠是国内外都很流行的益智类小游戏,通过在一个田园上用锤子敲打从洞口冒出的地鼠而获得游戏快感,消灭地鼠人人有责!保卫家园从我做起!游戏画面表现采用2d 视觉设计风格、 简约的手游类专用音响效果设置,本游戏由简单的1到 9数字按键操作实现消灭地鼠, 是一款简单易懂容易上手的手机休闲游戏。1.2项目概述1.3游戏背景故事哈里斯顿,一个坐落在美国南方的一个小镇,这里环境优美,气候宜人,因此吸引了大量的动物来这附近居住,但是总有一
3、些胆子大一点的动物跑到人类居住的地方定居。于是清除地鼠的任务开始了? 1.4游戏进度表1.5运行环境本游戏能够在屏幕大小为240*320 诺基亚手机等真机上流畅运行。第二章游戏元素2.1游戏角色 1. 角色属性定义玩家实际是控制一个打地鼠的锤子,玩家初始生命数为3;每逃跑一个地鼠,逃跑地鼠数加1,当逃跑数为15 时,玩家生命数减1; 当玩家生命数为0,则游戏结束。 2. 游戏角色介绍游戏的角色主要是一只地鼠,它会随机出现在手机屏幕上的固定的9个区域内,因为关卡的不同而出现速度和数量不同。 3. 游戏角色攻击由于地鼠随机出现在手机屏幕上的固定的9 个区域内,玩家控制手机上的 1到 9 按键进行攻
4、击, 当锤子攻击地鼠时进行碰撞检查,当检查到锤子跟地鼠相碰时为攻击到状态,玩家积分加1。当地鼠出现的屏幕上并未被攻击到进入消失状态后,玩家积分-1 。玩家积分小于0 时结束游戏。(图 2-1 游戏的基本操作流程跟基本操作介绍)2.2游戏 npc 1. 资源:地鼠(图 2-2 地鼠)游戏中地鼠的图片是一张32*224 大小的 png 图片,地鼠有5 种状态:未钻出状态、露出脑袋状态、全身钻出状态、逃回地洞状态和被玩家打到消失状态。游戏中地鼠的初始帧序列是在miannpc 类中进行的设置:2. 资源:锤子(图 2-3 锤子)游戏中锤子的图片是一张32*96 大小的 png 图片,锤子一共有3 种状
5、态:未攻击状态、 攻击状态、 攻击完成状态。游戏中锤子的初始化参数是在mainchuizi中完成的:锤子图片的初始化加载:锤子精灵的初始化:2.3游戏资源参数2.4游戏关卡游戏一共设置了4 个小关卡,游戏中地鼠的出现数量跟刷新速度由关卡的不同而随着变化,第一关时地鼠是每3 秒出现一只,在屏幕上存在的时间为2.5 秒,进入第二关时由原先的每3 秒出现一只改变为每3 秒出现 2 只,存在时间变为5 秒,第三关地鼠出现的数量跟第二关一样为每3 秒出现 2 只,存在时间由第二关的5 秒减少为了2.5 秒。第三章系统设定3.1游戏流程图(图 3-1 游戏流程图)游戏的开始的由loading界面开始加载首
6、先进入第一次游戏音乐开关选择,然后进入游戏主菜单界面在游戏的主逻辑logo()方法中进行游戏要进行的状态开始游戏、游戏说明、游戏设置、结束游戏的选择,以下为菜单选项中游戏状态的说明。1.开始游戏进入游戏开始选项时 gamecanvas 类里面的主逻辑logo() 方法进行游戏的逻辑选择选中开始游戏状态极其逻辑,再由游戏状态的绘制逻辑开始游戏中的界面绘制并调用游戏的碰撞检测等方法。2.游戏设置进入游戏开始选项时 gamecanvas 类里面的主逻辑logo方法进行游戏的主逻辑选择中开始游戏设置状态,再由游戏设置的绘制逻辑进行游戏设置的界面绘制。3.游戏说明进入游戏菜单由gamecanvas 类中
7、的主逻辑进行选择游戏说明的状态极其逻辑,开始游戏说明的界面绘制。4.结束游戏在游戏菜单中进行选择,选择游戏结束时调用maindisplay类中的销毁方法中的this.notifydestroyed()。 3.2 游戏界面的简介图本游戏的游戏界面中由paintgamecanvas方法绘制有玩家的积分、玩家的生命值、地鼠消失的数量和背景九宫格等基本背景。背景图片中九宫格是九个大小为50*50 间距为 8 的椭圆型小土堆,背景图片的顶部从左至右第一个是大小为20*20 代表玩家生命的人物图标, 第二个是大小20*20 代表地鼠逃跑数量的地鼠图标,第三个是大小为40*20代表玩家消灭地鼠分数的scor
8、es 字样图标。(图 3-2 游戏操作界面架构图) 3.3游戏主要类介绍第四章游戏主要模块介绍4.1游戏背景加载模块加载( loading )界面是由j2me 低级 ui 界面中 canvas 类的继承抽象类 gamecanvas类利用双缓冲绘制的,先定义一个屏幕画笔一个缓冲区画笔、再定义一块缓冲区画布, 在开始绘制ui 低级界面时先由缓冲区画笔把图片绘制在缓冲区画布上,再用屏幕画笔把已经绘制好的界面翻转绘制到手机显示屏幕上。首先绘制加载 (loading )界面的背景图片,再绘制 loading字样跟点型图片并在第一个点上面再绘制一个白色点型图片。再利用白色点型图片的x 抽位置的移动来实现假
9、象型内容加载效果。下图是本游戏的加载(loading )界面的截图:(图 4-1 游戏加载( loading )界面)本游戏中加载(loading )界面的背景图片是由一张240*320 的 png图片和一张大小32*15 带有 loading字样的 png 图片构成。加载( loading )界面由游戏主类gamedisplay里的初始化方法init来实现图片初始化跟加载,由gamedisplay里的 paintloading方法进行的绘制:4.2游戏菜单界面模块下图是本游戏的菜单界面截图:(图 4-2 游戏菜单界面)游戏菜单界面由gamecanvas双缓冲绘制,首先绘制背景跟开始游戏、游戏
10、说明、游戏设置、结束游戏字样大小为240*320 的图片,再绘制带有白色颜色的开始游戏等字样大小为110*70 的图片来做选择中时变化效果。当 paintintrefac方法绘制完成后游戏主逻辑调用游戏菜单界面的按键响应keyinterfac方法继续按键响应检测,当 keyinterfac方法检测到玩家按了向下或是是向上键时就改变游戏菜单绘制paintintrefac方法中的变量n(n 的初始值为0) 的值来对菜单中几个选项图片的选择绘制:游戏菜单界面由游戏主类gamedisplay 里的初始化方法init来实现图片初始化跟加载,由gamedisplay 里的 paintintrefac方法进
11、行的绘制:4.3游戏的游戏模块游戏中首先绘制了大小为240*320 带有玩家积分、玩家生命、地鼠消失数量的背景图片, 再由 miannpc 类控制地鼠精灵来绘制地鼠。由玩家操作按键来绘制锤子。游戏开始后由mytask 定时器类调用t.schedule(task, 3000, 3000)方法在开始游戏后3 秒开始刷地鼠,每3 秒刷一个。地鼠是由在mytask 类定义的随机对象random random = null随机刷在九宫格中的。random 产生的随机数控制1 到 9 好使地鼠刷在九宫格中由ran = math.abs(random.nextint() % 9 + 1产生;在游戏中锤子的出
12、现的由玩家控制的,由玩家使用手机上的1 到 9 数字键来控制锤子砸向界面上对应的九宫格,当玩家按下数字键的时候游戏按键检测keygame方法开始按键检测,把检测的chuiziweizhi变量对应的值传人mainchuizi类中由 mainchui类做锤子出现位置判断,由mainchui 类中的 logochuizi方法给出锤子相应的位置坐标。再传人 gamedisplay 类中由 paintchuizi锤子绘制方法绘制锤子。下图是游戏进行时的界面截图:(图 4-3 游戏操作界面)游戏界面由游戏主类gamedisplay 里的初始化方法init来实现图片初始化跟加载,由gamedisplay里的
13、 paintgamecanvas方法进行的绘制:4.4游戏退出界面模块当游戏主逻辑判断游戏结束时来绘制大小为240*320 带有 game over字样的游戏结束的背景图片。当游戏逻辑判断游戏状态为public final int gameover_status = 7;/ gameover游戏结束界面状态结束状态时。游戏主逻辑进行游戏现状的判断,判断玩家是赢是输或是没有开始游戏直接退出游戏。当玩家胜利时游戏逻辑选中胜利状态调用胜利状态下的图片绘制逻辑进行胜利界面的绘制。当玩家失败时游戏逻辑选择失败状态调用失败状态下的图片绘制逻辑进行当玩家没有开始游戏,在游戏菜单选项中就直接退出游戏时游戏逻辑
14、直接由 gamedisplay类调用由maindisplay类传来的notifydestroyed()方法进入销毁状态并停着音乐播放从而退出游戏。下图是本游戏退出的截图:(图 4-4 游戏结束界面)游戏退出界面由游戏主类gamedisplay 里的初始化方法init来实现图片初始化跟加载,由gamedisplay 里的 paintgameover方法进行的绘制:4.5游戏说明界面模块下图是游戏说明界面截图:进入游戏菜单界面时其中的一个子选项,游戏说明界面是由一张240*320 的背景图片构成,游戏说明选修里介绍了游戏的操作按键极其功能。(图 4-5 游戏说明界面)游戏说明界面由游戏主类game
15、display 里的初始化方法init来实现图片初始化跟加载,由gamedisplay 里的 paintillustration方法进行的绘制:4.6游戏设置界面模块游戏中因为是手机游戏制作所以采用了占用空间小的mid 格式的音乐文件做背景音乐,采用音效好的wav格式的做按键音乐。游戏设置里面由gamedisplay类中paintset方法绘制, mainmusic 类实现调节游戏进行时的音乐大小设置极其开关。进入游戏设置后玩家按向上和向下键来进行选项选择。当第一次音乐选择时玩家没有开起音乐玩家进入游戏设置界面时游戏设置界面绘制“开起”选择用来音乐播放的开起。当玩家第一次选中拉音乐播放时,再进
16、入游戏设置界面时,游戏设置界面绘制“关闭”选择用了关闭当前正在播放的音乐。选 中 “ 开 起 ” 选 项 时 游 戏 主 逻 辑 调 用gamedisplay类 里 的mainmusic.start()方法播放音乐。选 择 “ 关 闭 ” 选 项 时 游 戏 逻 辑 调 用gamedisplay类 里 的mainmusic.stop()方法停着音乐播放。游戏中音乐的播放与停着都是由mainmusic 类来实现的。当游戏刚开始时 gamedisplay类中的 yinyueset方法就对mainmusic 类进行实例化2 个对象。 来实现游戏中游戏音乐、按键选择音乐的播放。当需要播放游戏音乐或按键选择音乐时由相应实例化的对象给mainmusic 类传人音量跟所需要播放的背景音乐在mainmusic 类中由 init方法对音乐资源来进行初始化。在游戏中 ismusic值初始为0;当 ismusic值为 1 时为游戏背景音乐初始化。当ismusic值为 3 时为游戏按键音乐初始化。下图是游戏设置界面截图:(图 4-6 游戏设置界面)游戏设置界面由游戏主类gamedisplay