中期报告参考2-仅做参考

说明:中期报告阐述,毕业设计进展情况(就是你完成了哪些,如需求分析,系统分析设计,数据库设计,某些功能代码的实现等),遇到的问题及解决办法(挑几个代表性的问题写),后期需完成的工作(后期就是继续完善前面的需求分析,系统分析设计,以及编码未完成的部分,测试,书写论文等),总字数不少于2000字,详细批注请参考”中期报告1.doc”

中 期 报 告

随着科技的进步,人们生活水平的提高,手机已经成为一种极其普及的通信工具,手机游戏以其便携性,娱乐性优势获得了广泛应用,具有广阔的市场前景。目前,在中国有8000多万电脑网络用户,而中国的手机用户却已经超过3亿。与PC游戏不同,手机游戏摆脱了线缆的束缚,具有随时、随地、随身的特点,更适合人们在移动中休闲和娱乐。显然,手机游戏产业一旦启动,其能量将不亚于目前的电脑网络游戏。本文将研究基于J2ME的手机游戏开发。

游戏的具体设想如下:

1、 游戏名称:潜艇大战 2、 游戏过程设想

1) 用户控制潜艇攻击敌人军队的潜艇和战舰 。 2) 游戏以闯关形式出现,每关最后有一个BOSS。 3) 随着关数的增加游戏的难度逐渐增加。

目前为止,本系统开发处于中期状态,系统的部分功能已经实现。系统流程图如图1所示。

一、 毕业设计进展情况

1、游戏画布类的确定

GameCanvas是一个提供了游戏的基本接口的类。这个类与Canvas类相比有两个优点: 1) 它拥有屏幕缓冲,即GameCanvas本身就是使用双缓冲技术实现图形或者图片的屏

幕输出的,不需要开发人员编写自己的屏幕缓冲代码。 2) 它可以直接得到设备键盘的物理状态。这是与Canvas非常不一样的地方,在Canvas

中,如果需要获得键盘的物理状态,需要重载Canvas的keyPressed函数,通过keyPressed函数的参数获得键盘的键盘码,所以一切操作都在 keyPressed函数中实现,对程序的逻辑上的编写非常不方便。

由于以上的优点,在本系统的开发中应用GameCanvas类而没有应用Canvas类。 2、Sprite类碰撞检查

Sprite的碰撞检查可以分为两种:一类是矩形检查,一类是像素检查。往往由于游戏中角色的大小是以一个刚刚好能够将其包括的矩形区域来表示的,所以两个矩形中的任务没有发生真正碰撞的时候已经检测到碰撞的放生。而像素检查,只有当两个人物真正的发生了碰撞的时候才能检测到。所以在程序中应用了像素检查。

3、具体已经完成的功能 1) 游戏的正确加载。

2) 游戏菜单的制作,游戏载入后显示的菜单选项开始游戏等。 3) 游戏帮助和关于的制作,即About()类和Help()类的实现。 4) 正确读入游戏中应用的图片,并显示在正确的位置。

5) TiledLayer函数的应用,该函数应用其实现游戏背景图片的加载和移动。 6) LayerManager函数的编写,该函数用于游戏中图层的控制与加载。

7) keyPressed函数的编写,该函数用于获取键盘按下事件,也就是实现战舰的左右移

动的函数。

8) Sprite精灵类的开发,判断游戏中战舰、潜艇是否被击中的函数,也就是图片碰撞判

断函数,用于判断游戏中两个精灵对象是否发生碰撞。

9) gameCanvas类的编写,该函数继承自GameCanvas(MIDP 2.0新加入函数),是函数

TiledLayer()、keyManager()、keyPressed()、Sprite()的整合,类中包含了以上所有函数的应用,整体实现了游戏的所有图片、图层的载入,包括背景图片、屏幕上游动的鱼的载入,战舰的载入,潜艇的载入,战舰和潜艇互相攻击的子弹的载入,子弹行走轨迹函数的调用,是否击中对方的判断(即Sprite()函数的应用)。

图1 系统流程图

二、系统开发中遇到的问题

1、环境配置问题

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4