Java课程设计小游戏.docx

第 第 PAGE #贞共41贞 《高级语言程序设计》课程设计报告 《高级语言程序设计》课程设计报告 1、程序设汁说明书 【设计题目】 雷進行动游戏程序 【问题描述】 雷毬行动是一款供大家休闲娱乐的小游戏,游戏通过鼠标控制我方飞机hero的移动,达到躲 闪敌机的目的:利用鼠标键发射子弹和导弹,达到击毁敌机的目的,摧毁敌机有积分。此游戏为闯 关积分类小游戏。 【软件功能】 按鼠标左键,游戏开始。 利用鼠标移动控制hero自由移动,闪躲敌方子弹。 利用鼠标左键发射子弹,实现打中敌方飞机的功能:利用鼠标右键释放导弹,实现摧毁大量敌 机的功能,击中一个敌方飞机积一分。 hero碰到对方子弹会消耗生命,消耗生命的多少,依据子弹的不同而不同。 一关之后会进入下一关。 游戏右上角红色的进度条表示her。的生命,当红色全部消失之后,游戏结束,显示死亡。 游戏结束后,可重新开始,同1。 【算法思想】 1?创建游戏主界面,确定窗口的坐标。 设计游戏开始界而显示信息及信息坐标。 设置游戏进行中的信息,her。的移动、释放子弹和导弹,达到击毁敌机的目的。 处理游戏进行中的子弹、大爆、爆炸、敌机消失和存在的条件。 设置进入下一关的条件。 设计游戏结朿界而显示信息及信息坐标。 处理游戏重新开始满足的条件。 装载图像。 对游戏进行调试和改进,使这个游戏更加完善。 【类的设计】 本程序共有七个类: 1 .MainPanel 属性:BBV为子弹数组,EEV为敌机数组,BOMBV为爆炸数组,EBV为敌机子弹数组,DBV 为大爆数组,Emum为敌机数量,E-max敌机最大数,E-VCI为敌机速度,E-mov为敌机 横移几率,EM为敌机开火几率,SUm为击毁敌机数hero-hp为hero生命,back至 db-2均为图片,tracker为媒体跟踪器,y为背景滚动变:?, Seq为hero的动画变?, isfire 为hero开火,isblast为是否发爆,blastnum为大爆的数量,blastc为控制大爆,F、ff、s、 SS均为游戏界而上显示的信息; 方法:MainPaneI(Game)^造方法,Paint(GraPhiCS)建立游戏开始界而如显示的文字,run()控制 对象移动,BBnlOVe(int,int)子弹的移动方法,DBmOVe(int.int)大爆的移动方法, InouseDragged(MouseEvent)鼠标的拖拽用来保证 hero 不岀界,mouseMoved(MouseEvent) 鼠标的移动用来控制hero移动,InOUSePreSsed(MOUSeEVent)鼠标按键在组件上按下时调 用,重新开始游戏,】Bouseciicked(MouseEvent)鼠标按键在组件上单击(按下并释放) 时调用,释放子弹,InouscRclcascd(MouscEvcnt)鼠标按钮在组件上释放时调用, mouseEntered(MOUSeEVent)鼠标进入组件上调用,mouseExited(MouseEvent)鼠标离开组 件时调用; 功能:游戏的开始、运行、结束与重新开始。 Game 继承 JFramC 属性:X为游戏主界而的横坐标,y为游戏主界而的纵坐标,Pl为hero的子弹: 方法:Game()创建游戏主界面,main(String [])主方法; 功能:创建出游戏的主界而。 B last (大爆) 属性:X为大爆的横坐标,y为大爆的纵坐标,Com为数量,islive为hero存活; 方法:Blast(int,int)?立大爆的坐标,grow()构造方法; 功能:构造一个大爆(导弹爆炸)的类。 Bomb (爆炸) 属性:X为爆炸的横坐标,y为爆炸的纵坐标,COnt为数量,islive为hero存活; 方法:Bomb(im,int)建立爆炸的坐标,grow()构造方法; 功能:构造一个爆炸(子弹击中敌机)的类。 Enemy (敌机) 属性:X为敌机的横坐标,y为敌机的纵坐标,vx敌机数组的横坐标,vy为敌机数组的纵坐标, 第2贞共41贞 g(?级语言程序设计》课程设讣报告 r为敌机横移几率,f为敌机开火几率,K)ICft为向左移动敌机,toright为向右移动敌机; 方法:Enemy (intJntjntjnt)建立敌机的坐标,move (int)实现敌机的移动,tofire ()敌机释 放子弹,hit (im.im)敌机的子弹攻击hero, hitblast (int,int)子弹产生爆炸: 功能:构造一个敌机的类,实现敌机的移动。 EnemyBullet (敌机子弹) 属性:X、y为敌机子弹的坐标,vx、Vy为敌机子弹数组的坐标: 方法:move ()实现敌机子弹的移动,hit (int, int)敌机子弹攻击hero: 功能:构造一个敌机子

文档评论(0)

1亿VIP精品文档

相关文档