2024年5月16日发(作者:华为p9参数)
《高级语言程序设计》课程设计报告
1、 程序设计说明书
【设计题目】
雷霆行动游戏程序
【问题描述】
雷霆行动就是一款供大家休闲娱乐得小游戏,游戏通过鼠标控制我方飞机hero得移动,达
到躲 闪敌机得目得;利用鼠标键发射子弹与导弹,达到击毁敌机得目得,摧毁敌机有积分。此游戏
为闯 关积分类小游戏。
【软件功能】
1、按鼠标左键,游戏开始.
2、利用鼠标移动控制hero自由移动,闪躲敌方子弹.
3、利用鼠标左键发射子弹,实现打中敌方飞机得功能;利用鼠标右键释放导弹,实现摧毁大量敌
机得功能,击中一个敌方飞机积一分。
4、hero碰到对方子弹会消耗生命,消耗生命得多少,依据子弹得不同而不同。
5、一关之后会进入下一关。
6、游戏右上角红色得进度条表示hero得生命,当红色全部消失之后,游戏结束,显示死亡。
7、游戏结束后,可重新开始,同1。
【算法思想】
1、创建游戏主界面,确定窗口得坐标。
2、设计游戏开始界面显示信息及信息坐标.
3、设置游戏进行中得信息,hero得移动、释放子弹与导弹,达到击毁敌机得目得。
4、处理游戏进行中得子弹、大爆、爆炸、敌机消失与存在得条件。
5、设置进入下一关得条件.
6、设计游戏结束界面显示信息及信息坐标。
7、处理游戏重新开始满足得条件。
8、装载图像。
9、对游戏进行调试与改进,使这个游戏更加完善。
【类得设计】
本程序共有七个类:
1、MainPanel
属性:BBv为子弹数组,EEv为敌机数组,BOMBv为爆炸数组,EBv为敌机子弹数组,DBv
为大爆数组,E-num为敌机数量,E-max敌机最大数,E-vel为敌机速度,E—mov为敌
机 横移几率,E-hit为敌机开火几率,Sum为击毁敌机数量,hero—hp为hero生
命,back至 db-2均为图片,tracker为媒体跟踪器,y为背景滚动变量,seq为
hero得动画变量,isfire 为hero开火,isblast为就是否发爆,blastnum为大爆得数
量,blastc为控制大爆,f、ff、s、 ss均为游戏界面上显示得信息;
方法:MainPanel(Game)构造方法,pain(tGraphics)建立游戏开始界面如显示得文字,run()
控制 对象移动,BBmove(int,int)子弹得移动方法,DBmove(int,int)
大爆得移动方法, mouseDragged(MouseEvent) 鼠标得拖拽用来保证hero
不出界,mouseMoved(MouseEvent) 鼠标得移动用来控制hero移动,mousePresse
d(MouseEvent) 鼠标按键在组件上按下时调 用,重新开始游戏,mouseClicked(M
ouseEvent)鼠标按键在组件上单击(按下并释放) 时调用,释放子弹,mouseRele
ased(MouseEvent)鼠标按钮在组件上释放时调用, mouseEntered(M
ouseEvent)鼠标进入组件上调用,mouseExited(MouseEvent)鼠标离开组 件时
调用;
功能:游戏得开始、运行、结束与重新开始。
2、Game继承JFrame
属性:x为游戏主界面得横坐标,y为游戏主界面得纵坐标,pl为hero得子弹;
方法:Game()创建游戏主界面,main(String [])主方法;
功能:创建出游戏得主界面。
3、Blast(大爆)
属性:x为大爆得横坐标,y为大爆得纵坐标,cont为数量,islive为hero存活;
方法:Blast(int,int)建立大爆得坐标,grow()构造方法;
功能:构造一个大爆(导弹爆炸)得类。
4、Bomb(爆炸)
属性:x为爆炸得横坐标,y为爆炸得纵坐标,cont为数量,islive为hero存活;
方法:Bomb(int,int)建立爆炸得坐标,grow()构造方法;
功能:构造一个爆炸(子弹击中敌机)得类。
5、Enemy(敌机)
属性:x为敌机得横坐标,y为敌机得纵坐标,vx敌机数组得横坐标,vy为敌机数组得纵坐标,
r为敌机横移几率,f为敌机开火几率,toleft为向左移动敌机,toright为向右移动
敌机;
方法:Enemy(int,int,int,int)建立敌机得坐标,move(int)实现敌机得移动,tofir
e()敌机释 放子弹,hit(int,int)敌机得子弹攻击hero,hitblast(int,int)
子弹产生爆炸;
功能:构造一个敌机得类,实现敌机得移动。
6、EnemyBullet(敌机子弹)
属性:x、y为敌机子弹得坐标,vx、vy为敌机子弹数组得坐标;
方法:move()实现敌机子弹得移动,hit(int,int)敌机子弹攻击hero;
功能:构造一个敌机子弹得类,实现敌机子弹得移动与攻击。
7、PlayerBullet(hero子弹)
属性:x、y为hero子弹得坐标,v为hero子弹得速度;
方法:move()实现hero子弹得移动,hit(int,int)hero子弹攻击敌机;
功能:构造一个hero子弹得类,实现hero子弹得移动与攻击.
【用户界面】
游戏开始界面
发布者:admin,转转请注明出处:http://www.yc00.com/num/1715790415a2672094.html
评论列表(0条)