1.团队名称、团员介绍

团队名称:三枪加一炮

赖富烨(组长):

Poison(毒药)类的设计;

FishJpanel(游戏面板)类中的线程、部分方法的实现;

林阿强(组员):

Login(简单登录界面)类的设计;

Playmusic(音乐播放)类的设计;

FishJframe(游戏容器)类的设计;

Bubble(气泡)类的设计;

张煌(组员):

OtherFish(系统鱼)类的设计;

OtherFishandbubble(系统鱼与气泡碰撞)类的设计;

FishJpanel(游戏面板)类中的线程、部分方法的实现;

2.项目Git地址(暂缺)

3.前期调查

通过对大鱼吃小鱼的调查,总结出我们设计需要涉及到鱼类的hp(生命值)、score(积分)等,碰撞检测,音乐设计等方面。

4.项目功能架构图、主要功能流程图

5.UML类图

6.项目运行截图或屏幕录制

7.项目关键代码

音乐播放

通过构造Playmusic类,编写播放背景音乐的相关方法,再通过Thread使GUI和Playmusic多个线程同时进行。

packagefish;importjava.applet.AudioClip;importjava.net.MalformedURLException;importjava.net.URL;importjavax.swing.JApplet;import java.io.BufferedInputStream;importjava.io.FileInputStream;importjavazoom.jl.player.Player;/***@author林阿强

* 2020-1-9*/public classPlaymusic {publicPlaymusic(String filename) {this.filename =filename;

}public voidplay() {try{

BufferedInputStream buffer= newBufferedInputStream(newFileInputStream(filename));

player= newPlayer(buffer);

player.play();

}catch(Exception e) {

System.out.println(e);

}

}privateString filename;privatePlayer player;

}

----------------开启线程----------------------

public voidplaymusic() {newThread() {

@Overridepublic voidrun() {

Playmusic mp3= new Playmusic("music/music.wav");

mp3.play();

}

}.start();

}

碰撞的检测

碰撞检测是根据myFish的长宽与otherFish的长宽进行比较,其中是按照一定的数学公式(借鉴网上)来进行计算。计算完后,会对myFish的各个属性进行修改。

otherFish的长宽与bubble的长宽进行比较(无数学公式),碰撞后,bubble也会被otherFish吃掉,即图片消失。

注:图片的长宽皆是调用getHeight和getWidth方法获得。

-----------------------大鱼吃小鱼----------------------for (int i = 0; i < otherFishs.size(); i++) {

OtherFish otherFish=otherFishs.get(i);if (myFishX < otherFish.oImg.getWidth(null) * 0.7 +otherFish.x&& myFishY < otherFish.oImg.getHeight(null) * 0.7 +otherFish.y&& myFishX + myFishW > otherFish.x + otherFish.oImg.getWidth(null) * 0.3

&& myFishY + myFishH > otherFish.y + otherFish.oImg.getHeight(null) * 0.3

|| myFishX < otherFish.x + otherFish.oImg.getWidth(null) * 0.7

&& myFishY < otherFish.y + otherFish.oImg.getHeight(null) * 0.7

&& myFishX + myFishW > otherFish.x + otherFish.oImg.getWidth(null) * 0.3

&& myFishY + myFishH > otherFish.y + myFishY * 0.3) {if (otherFish.oImg.getHeight(null)

otherFishs.remove(i);

myFishW+= 6;

myFishH+= 6;

score= score + 3;break;

}if (otherFish.oImg.getHeight(null) >myFishH) {

hp--;if (hp > 0) {

bubbles.clear();

poisons.clear();

otherFishs.clear();

myFishW= 30;

myFishH= 20;

}else{

flag= 1;

myImg= new ImageIcon("picture/wu.png").getImage();

}

}

}

}

----------其他鱼和气泡--------

public classOtherFishandbubble {public intfishMeet(OtherFish otherFish,Bubble bubble){int i=0;if(otherFish.xbubble.x&&otherFish.y+otherFish.oImg.getHeight(null)>bubble.y){

i=1;

}returni;

}

}

8.代码静态扫描

第一次扫描

最终扫描

9.尚待改进或者新的想法

不足:功能不够完善,GUI界面优化不够,同时对于线程的运用不够熟练,没有用到线程池。

新的想法:针对这次课程设计,我们觉得可以增加用户信息存储功能、新模式新玩法的开发。

java大鱼吃小鱼_Java课程设计——大鱼吃小鱼(团队)相关推荐

  1. 记忆测试系统java代码_JAVA课程设计——记忆测试系统(附源程序).doc

    <JAVA程序设计>课程设计报告 题 目: 记忆游戏 姓 名: 学 号: 班 级: 指导教师: 完成时间 成 绩: 信息工程学院 2015年6月 目 录 TOC \o "1-5& ...

  2. java计算器课程_Java课程设计——计算器团队博客

    1.团队名称.团队成员介绍(需要有照片) 1.1团队名称 707 1.2团队成员介绍 谢元将:组长 罗登宇:组员 王华俊:组员 2. 项目git地址 3. 项目git提交记录截图(要体现出每个人的提交 ...

  3. 电子记事本java代码_JAVA课程设计报告电子钟日历记事本

    JAVA课程设计报告电子钟日历记事本 课课程程设设计计 报报告告 ( 2012-- 2013 年度第年度第 2 学期学期) 日历记事本日历记事本 专业专业计算机科学与技术计算机科学与技术 学生姓名学生 ...

  4. 扫雷java讲解_java课程设计(扫雷游戏)讲解.doc

    java课程设计(扫雷游戏)讲解.doc 成 绩 评 定 表 学生姓名班级学号 专 业课程设计题目基于Java的扫雷游戏软件设计评 语 组长签字: 成绩 日期 2014 年 月 日 课程设计任务书 学 ...

  5. java设计五子棋_JAVA课程设计+五子棋(团队博客)

    JAVA课程设计 利用所学习的JAVA知识设计一个五子棋小游戏 1.团队名称.团队成员介绍(菜鸟三人组) 杨泽斌[组长]:201521123049 网络1512 叶文柠[组员]:20152112305 ...

  6. java课程设计连连看_连连看_java课程设计报告

    连连看_java课程设计报告 <连连看> 项目设计报告 专 业: 软件工程 班 级: 07级2班 姓 名: 二00九 年 七 月 二十一 日 目 录 1.项目设计目的.意义-------- ...

  7. java课程设计报告连连看_连连看_java课程设计报告.doc

    连连看_java课程设计报告 <连连看> 项目设计报告 专 业: 软件工程 班 级: 07级2班 姓 名: 二00九 年 七 月 二十一 日 目 录 1.项目设计目的.意义-------- ...

  8. 【源码+图片素材】Java王者荣耀游戏开发_开发Java游戏项目【王者荣耀】1天搞定!!!腾讯游戏_Java课程设计_Java实战项目_Java初级项目

    王者荣耀是当下热门手游之一,小伙伴们是否想过如何制作一款属于自己的王者荣耀游戏呢? 本课程讲解了一个王者荣耀游戏的详细编写流程,即使你是刚入门Java的新手,只要你简单掌握了该游戏所需要的JavaSE ...

  9. java qq课程设计报告_JAVA课程设计报告语音QQ仿真

    JAVA课程设计报告语音QQ仿真 <Java 程序设计>课程设计报告 题 目: 语音 QQ 仿真 学 院:计算机科学与工程 专 业:物联网工程 学生姓名: xx 学 号: 13003701 ...

最新文章

  1. 深度研报:六大视角解读人工智能,AI岂止于技术
  2. hbase.client.keyvalue.maxsize的默认值
  3. Android Region代码分析
  4. jexcel可以合并单元格么_含金量超高的3个文本、字符合并实用技巧解读!
  5. 人工智能学什么?专家表示基础科学教育需发力
  6. Ajax(2)--Ajax核心工作机制 你忘记了吗?
  7. UOS桌面操作系统专业版字体
  8. 《程序员修炼之道》解读
  9. stylus -w style.styl -o style.css
  10. 工资计算小程序,不通用
  11. 13-GPIO功能框图
  12. 日暮途远,故吾倒行而逆施之.
  13. 用友漏洞php,Phpwind GET型CSRF任意代码执行漏洞公开
  14. iMAC——U盘全新重装Mac系统
  15. 野田圣子、希尔顿、松下幸之助,都喝过马桶水吗? .
  16. 浙大pat 1017
  17. Win10离线安装.NET Framework 3.5的方法技巧(附离线安装包下载)
  18. 集合(Collections)
  19. 爬取京东商城的手机图片
  20. XV6 RISC-V 源码阅读报告之进程模型

热门文章

  1. 计算机综合布线基本知识,图文讲解!综合布线系统基础知识大全!
  2. Nginx证书(server.crt,server.key),Tomcat证书(server.jks)
  3. 数据仓库系列(二)哲学建模的艺术:如何完成数仓的维度建模设计??--做好宏观角度考虑维度一致性
  4. 对比《学习R》PDF代码+《R语言实战第2版》PDF代码+《R数据科学》PDF代码分析
  5. Mac 中将脚本封装为 App
  6. MySQL-实例练习
  7. Fastboot使用详解
  8. 国家发展改革委、财政部关于加快推进国家电子政务外网建设工作的通知
  9. C语言编写的坦克大战exe小游戏
  10. 功率因数 、有功、无功之间的关系