java课程设计——坦克大战

一、团队课程设计博客链接:

https://www.cnblogs.com/chenhuilin/p/10275664.html

二、个人负责模块或任务说明:

模块:GUI设计(游戏面板,登录面板,主窗体,显示关卡面板)

三、自己的代码提交记录截图

1232215-20190116104919408-2028953095.png
1232215-20190116104940784-1406744509.png

四、自己负责模块或任务详细说明

1.游戏面板:绘制游戏界面,将所有游戏元素展现出来

1232215-20190116105652728-1497902232.png
1232215-20190116151523803-650545904.png

1.初始化组件:将各个元素实例化,如子弹,坦克,墙块。根据单人还是双人决定创建几个玩家坦克。
2.使用paint方法绘制画面到面板上,paint方法中还有许多绘制方法。

1232215-20190116152735818-493283414.png

举例:

1232215-20190116153626570-1184965284.png

绘制子弹,首先循环遍历所有子弹对象,获取子弹对象判断其是否还真实存在,存在则调用相应方法并画出,不存在则删除该对象。(其它绘制方法类似于此)

3.创建游戏刷新帧线程,并开启,通过刷新帧形成动画效果
4.开启键盘监听,来操控坦克的移动,和攻击
5.如果gameover会调用stopThread(),并回到原关卡,如果消灭了当前关卡的敌人坦克,则进入下一级关卡,(关卡转换调用了JumpPageThead线程,)直到最终胜利,出现胜利图样。

2.显示关卡面板(第几关开始提示):登录面板和游戏面板的过渡界面,只有一个闪烁的动画效果

1232215-20190116105634900-688338247.png

1.调用关卡面板的动画线程,并开始线程,最终绘制如上图的图片,经三秒。
2.使用主窗体的setPanel方法跳转到游戏面板

3.主窗体:整个面板最外层载体,一个800*600的窗体

1232215-20190116110548230-1454866723.png

1.调整屏幕尺寸及位置
2.建立窗口事件监听,使得在关闭窗口时会提示我们是否就此退出游戏。
3.添加登录面板。

4.登录面板:选择游戏模式是单人还是双人

1232215-20190116110150637-1255067449.png
1232215-20190116143436208-1795208971.png

1.建立键盘事件监听,控制坦克图标上下移动,或进入游戏。
2.重写paint方法,将背景及图形元素绘制在面板上。
3.使用异常,使整个程序更加健壮。

五、课程设计感想

1.对Java的面向对象思想的理解更加透彻。
2.对GUI界面的设计更得心应手。
3.团队的力量是强大的,在整个的团队的共同努力下我们才能圆满的完成这次课设。

转载于:https://www.cnblogs.com/lizhiting/p/10275909.html

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值