java手机游戏实验5

java手机游戏实验5

ID:42818984

大小:66.50 KB

页数:7页

时间:2019-09-23

java手机游戏实验5_第1页
java手机游戏实验5_第2页
java手机游戏实验5_第3页
java手机游戏实验5_第4页
java手机游戏实验5_第5页
资源描述:

《java手机游戏实验5》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验五射击游戏一、实验目的1.熟悉射击类游戏规则。2.学习游戏过程中的碰撞检测方法。3.学习J2ME的记录管理系统。二、实验环境Eclipse、WTK、Proguard。三、实验内容完成打飞机游戏。游戏规则是:玩家控制一架飞机在夜空飞行,按手机方向键可移动飞机,按中心键可向前方发射导弹,游戏时背景不变,屏幕上会随时出现敌机,并不断开火。玩家的任务是尽可能多的消灭敌机。当玩家飞机中弹时游戏结束,系统提示本次战斗消灭的敌机数量,以及历史消灭敌机的最高记录。四、实验步骤1.用Eclipse创建项目及MIDlet框架2.准备好游戏所用资源图片:3.根据游戏中存在的对象以及对象之间的关系

2、,定义五个类分别管理导弹、飞机、玩家飞机、敌机和爆炸。4.添加一个MainCanvas类。把MainCanas和Midlet框架联系起来。5.思考题(1)理解游戏流程.(2)本程序存在问题:游戏结束后记录本次得分和历史得分,玩家飞机还可以继续打敌机,分数继续累加。。。(3)修改代码:A)本程序的RMS是否有效?去掉SaveHighScore()和LoadHighScore()观察运行结果有无差异?B)如何修改代码,使得每架玩家飞机可同时发射三枚导弹。怎么修改可以使得每家玩家飞机和敌机均可发射三枚导弹。C)如何修改代码,使得玩家可以游戏三轮,每轮中弹后记录本次得分和历史最高分。重

3、新一轮游戏,分数应该从0开始重新计本轮得分。三轮之后游戏结束,保持游戏画面的静止。如何修改代码实现上述功能?(4)给游戏添加音效。主要类参考代码:BulletSpritepublicclassBulletSpriteextendsSprite{privateintm_nSpeedX=0;privateintm_nSpeedY=0;BulletSprite(Imageimage,intframeWidth,intframeHeight){super(image,frameWidth,frameHeight);defineReferencePixel(frameWidth/2,fr

4、ameHeight/2);setVisible(false);}publicvoidSetSpeed(intnSpeedX,intnSpeedY){m_nSpeedX=nSpeedX;m_nSpeedY=nSpeedY;}publicvoidLogic(){if(isVisible()==false)return;intnX=getRefPixelX()+m_nSpeedX;intnY=getRefPixelY()+m_nSpeedY;setRefPixelPosition(nX,nY);if(getRefPixelX()<-10

5、

6、getRefPixelX()>MainCan

7、vas.m_nScrWidth+10

8、

9、getRefPixelY()<-10

10、

11、getRefPixelY()>MainCanvas.m_nScrHeight+10)setVisible(false);}ExplosionSpritepublicclassExplosionSpriteextendsSprite{ExplosionSprite(Imageimage,intframeWidth,intframeHeight){super(image,frameWidth,frameHeight);defineReferencePixel(frameWidth/2,frameHeig

12、ht/2);setVisible(false);}publicvoidLogic(){if(isVisible()==false)return;intnFrame=getFrame();nFrame++;if(nFrame>7){setVisible(false);return;}setFrame(nFrame);}}PlaneSpritepublicclassPlaneSpriteextendsSprite{protectedintm_nSpeedX=0;protectedintm_nSpeedY=0;publicBulletSpritem_Bullet;publicPlan

13、eSprite(Imageimg,intnWidth,intnHeight){super(img,nWidth,nHeight);try{ImageBImg=Image.createImage("/Bullet.png");m_Bullet=newBulletSprite(BImg,5,5);}catch(IOExceptione){}setVisible(false);defineReferencePixel(nWidth/2,nHeight/2);}publicvoidSetSpeed(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。