一、需求分析
坦克大战中有我方坦克和敌方坦克,我方坦克有一个,敌方坦克有多个。坦克可以移动,也可以发射子弹。我方坦克可以通过上下左右键来控制方向,敌方坦克自动改变方向。在游戏窗体中有障碍物,包括砖墙、钢墙、水墙和草地。坦克可以穿过草地,在遇到其他障碍物时,我方坦克停止移动,并通过操纵改变方向再移动,敌方坦克遇到其他障碍物时可以自动的改变方向。我方坦克有三次生命值,当与敌方坦克或敌方子弹相撞时,生命值减- -, 当生命值是零时,敌方胜利,游戏结束。敌方坦克的生命值为-一,当敌方坦克与我方坦克或者我方子弹相遇就消失,同时我方子弹也消失,并产生爆炸。当我方坦克把敌方坦克消灭完后,我方胜利,游戏结束。敌方子弹或我方子弹击中老巢,游戏结束。
二、程序设计
采用面向对象的设计方法,项目中有以下类:
主窗体: GameForm, 游戏的主窗体。
坦克:父类坦克(Tank)、 我方坦克(MyTank)、 敌方坦克( EnemyTank)。
墙:父类墙(Wall)、砖墙(BrickWall)、刚墙( SteelWall)、水墙( WaterWall)、
草地(MeadoeWall)。
子弹:父类子弹(Bullet)、 我方子弹(MyBullet)、敌方坦克(EnemyBullet)。
老巢: Home
火花: Spark, 子弹与墙碰撞产生火花。
爆炸: Blast, 子弹与坦克和老巢碰撞产生爆炸。
注:Java坦克大战项目视频和pdf文档,去csdn 找博主领取就行了
二·项目git
1.项目git提交记录截图
三·项目功能架构图与主要功能流程图
1.项目功能架构图
2.功能流程图
3.面向对象类设计图
Wall:
Visible:
乖乖献上了类图:
四·项目运行截图和屏幕录制
演示:
双人游戏和界面地图的设计是我们这个课设的特点:
1.游戏面板:绘制游戏界面,将所有游戏元素展现出来
2.显示关卡面板(第几关开始提示):登录面板和游戏面板的过渡界面,只有一个闪烁的动画效果
3.主窗体:整个面板最外层载体,一个800*600的窗体
4.登录面板:选择游戏模式是单人还是双人
五·项目关键代码
代码太多,主要列出了主要的类以及特色的功能代码,耐心看看,O(∩_∩)O哈哈~
————————————————
版权声明:本文为CSDN博主「Java_may」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Java_may/article/details/118094598
全部评论
(1) 回帖