项目效果展示和介绍

运行效果图如下:

这个项目最初的时候是一个贪吃蛇,但是因为Java大作业做贪吃蛇的同学实在太多了,要是也交个贪吃蛇,肯定有和别的同学撞车的风险,而且老师也肯定看腻了,因此我就根据原先的贪吃蛇项目进行魔改,以蜘蛛侠和毒液作为项目的背景,把原先的贪吃蛇作为毒液~

先介绍一下游戏规则:

游戏开始后,我们操纵的是毒液(就是图上的贪吃蛇),右下角的蜘蛛侠会根据毒液的位置,向毒液所在的方向移动(具体的逻辑就是根据毒液的头部所在的位置,朝该方向移动),如果蜘蛛侠碰到了毒液的身体,游戏结束(当然如果贪吃蛇碰到了自己的身体也游戏结束,和原先的贪吃蛇规则一样),这里有三种食物,吃掉食物可能会造成分数score和身体长度的变化,第一种食物(加分加长度),第二种食物(减分加长度,不要吃),第三种食物(加分减长度,多吃),毕竟长度越短越不容易被抓嘛,当然这些规则可以自己改。随着分数的增加,界面会出现提示,提示蜘蛛侠加速了,这里蜘蛛侠会根据分数的增多一直进行加速。 另外这个项目还带上了背景音乐:)

分数到1000,蜘蛛侠加速了:)

被蜘蛛侠抓到了,游戏结束了 :(

另外为了方便直接运行,我还把项目打成了jar包的形式,只要在命令行运行即可啦~

下面是实验报告节选:

1.系统总体设计

一、需求分析

  1. 三种不同的食物在被毒液吃掉后会在新位置随机生成。
  2. 毒液在吃到不同的食物后,长度和所得分数会发生相应的改变。
  3. 对于毒液,通过方向键实现移动方向的改变,同时,头部造型也随方向的改变而做出相应的调整。
  4. 蜘蛛侠会根据毒液的移动方向,自动做出移动方向的调整,去追赶毒液。
  5. 毒液分数超过一定值时,蜘蛛侠移动速度加快,并且在游戏区给出相应的警告。
  6. 毒液被蜘蛛侠抓到或者毒液的头部触碰了身体时,游戏结束。
  7. 添加了游戏背景音乐,并且在游戏过程中可以循环播放。
  8. 添加了控制按钮(空格),可以实现对游戏及音乐的暂停,以及在游戏结束后的重新开始。
  9. 在标题界面画出了三种不同食物对应的属性和提示,并实时更新毒液的长度和游戏分数。
  10. 打包成jar文件,方便使用。

二、概要设计

  1. 编写一个MPanel类,将对应功能的实现都放入这个类中。
  2. 通过该类的构造函数,实现游戏初始化,图片和音乐的加载。
  3. 在该类中通过方法paintComponent(Graphics g)来调用该类中的所有paint方法,进行绘图。
  4. 在该类中通过方法keyPressed(KeyEvent e)来调用该类中的所有Response方法,进行对键盘的监听和响应。
  5. 在该类中通过方法actionPerformed(ActionEvent e)来调用该类中的所有Movement方法和judgeFailed方法,来实现内容的移动和游戏结束判断。

2.功能模块划分

3.系统详细设计

(1)类的设计及类继承关系

(2)系统流程图

(3)方法调用关系

4.各个功能模块的实现方法描述

代码风格如下:

//对空格进行响应 实现暂停和重新开始private void spaceResponse(KeyEvent e) {int keyCode=e.getExtendedKeyCode();//获取所敲的键盘对应的数字if(keyCode==KeyEvent.VK_SPACE) {//如果敲击的是空格键if(isFailed) {//游戏结束后再次敲击空格 重新开始isFailed=false;//游戏重新开始时将isFailed置falseinitSnake();}else {isStarted=!isStarted;//取反状态 开始-暂停 暂停-开始}repaint(); //修改isStarted参数后重新调用方法//重新画一遍 使得效果展示出来if(isStarted) {//在空格响应事件中实现声音的播放和暂停playBGM();}else {stopBGM();}}}

全部源码+完整的实验报告(20r),可以邮箱私信我yangsober@163.com

Java毕业设计(Java大作业课程设计)——贪吃蛇魔改版(附源代码和完整实验报告)相关推荐

  1. java贪吃蛇课程设计报告_Java课程设计贪吃蛇讲解

    Java课程设计是必不可少的一个重要学习环节,Java程序设计的目的就是加深Java学习者对Java理论基础内容的理解和掌握.今天我们要讲的Java课程设计就是贪吃蛇的小程序设计,以下是具体讲解: 1 ...

  2. HTML期末大作业课程设计~仿阴阳师游戏官网首页html模板(HTML+CSS)~动漫主题html5网页模板-HTML期末作业课程设计期末大作业动漫主题html5网页模板-html5网页设计源码...

    HTML期末大作业课程设计~仿阴阳师游戏官网首页html模板(DIV+CSS) 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作业无从下手?网页要求的总数量太多?没 ...

  3. HTML期末大作业课程设计~仿阴阳师游戏官网首页html模板(HTML+CSS)~动漫主题html5网页模板-HTML期末作业课程设计期末大作业动漫主题html5网页模板-html5网页设计源码

    HTML期末大作业课程设计~仿阴阳师游戏官网首页html模板(DIV+CSS) 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作业无从下手?网页要求的总数量太多?没 ...

  4. HTML期末大作业课程设计动漫主题html5网页~奇恩动漫首页html模板(HTML+CSS)~个人设计web前端大作业...

    HTML期末大作业课程设计动漫主题html5网页~奇恩动漫首页html模板(HTML+CSS) ~个人设计web前端大作业 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTM ...

  5. HTML期末大作业课程设计~动漫游戏官网10个页面(HTML+CSS+JavaScript)

    HTML期末大作业课程设计动漫主题html5网页~动漫官网html模板(HTML+CSS) ~个人设计web前端大作业 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网 ...

  6. HTML期末大作业课程设计动漫主题html5网页~奇恩动漫首页html模板(HTML+CSS)~个人设计web前端大作业

    HTML期末大作业课程设计动漫主题html5网页~奇恩动漫首页html模板(HTML+CSS) ~个人设计web前端大作业 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTM ...

  7. 薛之谦明星人物介绍html源码 html期末大作业 课程设计

    薛之谦明星人物介绍html源码 html期末大作业 课程设计 开发语言:html 布局方式:div 页面数量:7页 项目页面截图 :

  8. 小猪佩奇网页 html源码 期末大作业 课程设计

    小猪佩奇网页 html源码 期末大作业 课程设计 开发语言:html 布局方式:div 页面数量:2页 项目页面截图 :

  9. 赵丽颖明星人物介绍html源码 html期末大作业 课程设计

    赵丽颖明星人物介绍html源码 html期末大作业 课程设计 开发语言:html 布局方式:div 页面数量:7页 项目页面截图 :

  10. 斩·赤红之瞳动漫网页 html源码 期末大作业 课程设计

    斩·赤红之瞳动漫网页 html源码 期末大作业 课程设计 开发语言:html 布局方式:div 页面数量:5页 项目页面截图 :

最新文章

  1. 【Qt】Qt Creator中文输入设置
  2. 八百客CRM:微信提现收费,仅仅用户钱包受了伤?
  3. 关于A基金和B基金的了解
  4. ERP成分简介--听觉感觉反应
  5. c++对象的内存布局2--进阶篇---C++ 对象的内存布局(上)
  6. 如何将BeanDefinition注册到IoC容器?
  7. 【HDU - 1754】I Hate It (线段树模板 单点覆盖更新+区间最大值查询)
  8. 500张思维导图记38000单词_思维导图记单词,环环相扣难遗忘——2020奇速英语夏令营第三天...
  9. huffman算法c语言实验报告,huffman二叉树实验报告--数据结构(c语言).doc
  10. 程序员锁死公司服务器,导致600万元资金打水漂。网友神回复
  11. SAP License:SAP电话面试
  12. 什么样的人才容易被骗?
  13. ubuntu16.04 运行dso问题梳理
  14. Git版本控制:Git查阅、撤销文件修改和撤销文件追踪
  15. el-table表格数据没有刷新
  16. ESAPI入门使用方法
  17. 如何计算当地的中央子午线?全国各地中央子午线【转载】
  18. bat 删除文件名前N个字符
  19. 春招总结(作业帮、华为、腾讯、美团、京东面经)
  20. python中占位符的使用

热门文章

  1. Nginx Log And Analysis Project
  2. 越南暂难引发亚洲金融危机
  3. 越发明白做事认真是什么,做人心平气和又是什么
  4. win2000/xp忘记密码的方法(转)
  5. 工业软件商业模式,路在何方?
  6. ubuntu18.04双系统息屏或合上笔记本盖子后无法唤醒
  7. 快速学习OSG(5)——light-聚光灯
  8. wxpython应用程序对象与顶级窗口_方法对象wxPython方法对象
  9. 计算机 指挥窗口 教案,浙江摄影出版社三年级下册新版信息技术全册计划及教案.doc...
  10. 根据配置CLASSPATH彻底弄懂AppCLassLoader的加载路径问题