JAVA面向对象课程设计--保卫萝卜
1 团队名称、团队成员介绍、任务分配,团队成员课程设计博客链接(以表格形式呈现),标明组长。
姓名 | 任务分配 | 课程设计博客链接 |
---|---|---|
湛遥(组长) | 炮塔内容的编写,以及部分方法实现。 | https://www.cnblogs.com/200157zy/p/14342241.html |
林盛泓 | 背景图片的编写,萝卜(家)图片编写,以及部分方法。 | $12 |
甘津津 | 炮塔内容的编写,以及部分方法实现。 | https://www.cnblogs.com/g1215161797/p/14342251.html |
2 本项目的git地址。
https://gitee.com/zhan-shen/defend-radish.git
3 项目git提交记录截图(要体现出每个人的提交记录及提交说明)。
4 前期调查(主要包含别人做得怎么样、怎么做的内容)
5 项目功能架构图、主要功能流程图
6 面向对象设计包图、类图。如果类太多,可仅列出主要类。
7 项目运行截图或屏幕录制
8 项目关键代码分模块描述:模块名称-文字说明-关键代码(注意:不得直接复制所有源代码,仅粘贴最关键代码)。
8.1 关于子弹类的说明
这部分代码画出各等级的子弹,判断子弹飞行的距离
8.2 音乐播放
这部分采用多线程技术播放音乐,在游戏过程中,该音乐会一直播放,直到完全结束游戏
8.3 关键算法
这部分通过计算子弹是否在怪物范围内,从而来判断是否碰撞
这部分计算怪物是否在炮塔攻击范围内
这部分计算攻击怪物时,炮塔的偏转角度
8.4 任务多线程执行
这部分代码使任务在规定时间内重复执行,反复产生怪物
8.5 鼠标监听
这部分代码主要负责监听鼠标点击的坐标,作出相应回应
8.6 用图片展示不同等级的炮塔
根据图片文件的命名,用下标确定不同等级的炮身,即00为第一级、10第二级、20第三级,完成对炮身图片的读取。
8.7 控制发射子弹的间隔
总共有五种炮塔,通过操控index数值,使不同炮塔的发射速度不同。
9 项目代码扫描结果及改正。
10 项目总结(包括不足与展望、想要进一步完成的任务)
1.未能完成游戏存档功能
2.没有实现暂停游戏的功能
3.每一波生成的怪物都是相同的,应实现随机生怪
4.怪物的设定不够多样化,不同怪物之间仅仅是血量的不同
5.只做了一张地图,关卡不够多
6.炮塔的种类可以更多一些
7.应加入难度模式,使玩家能够自主选择难度
8.希望能实现联网对战