- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
精品学习资料范文 java贪吃蛇实验报告 篇一:Java期中课程设计报告-贪食蛇 Java期中课程设计报告 题目: 贪食蛇游戏程序 姓 名: 学 号: 院 系: 专 业: 年 级: 贪吃蛇游戏程序设计 一、基本内容描述 运用java技术开发出贪吃蛇游戏,这个程序是用一个小矩形表示蛇的一节身体,身体每长一节,增加一个矩形块。移动时必须从蛇头开始,也就是蛇尾不能改作蛇头。当游戏者按了方向键后,蛇头朝着指定的方向移动,一步移动一节身体。图形的实现是从蛇头的新位置开始画出蛇。用户可以用上下左右键控制蛇头的方向,用空格键暂停或继续,非常简单! 可以实现如下功能: 1. 贪吃蛇游戏是大家很常见的小游戏,在生活工作之余大家可以玩它,已达到放松各种压力的目的。 2. 游戏可以进行升级,也就是增加吃食物的难度,以便使大家更有挑战性,不觉得太无趣。 3. 游戏界面大小可以任意指定,数据从文件读入。 4. 利用swing实现良好的GUI界面。 二、需求分析 (一)系统功能要求: 1. 利用方向键来改变蛇的运行方向。 2. 空格键暂停或继续游戏,并在随机的地方产生食物。 3. 吃到食物就变成新的蛇体,碰到壁或自身则游戏结束,否则正常运行。 (二)系统设计思路: 1. 贪吃蛇是很经典的格子游戏。所谓格子游戏就是在设计游戏时的主要思想是每个设对象都是由格子组成,游戏运行界面也是由格子组成。格子思想决定了此类游戏在设计时的算法思想。 2. 方向键控制一个方块的移动的方法,一个方块的移动是靠移动其坐标位置来实现的。 3. 方向键控制是上下左右对一个方块的控制,用四个判断语句实现。 4. 蛇的移动算法思想可以看成是第一个方块移动,第二个方块移到第一个方块的位置, 第三个方块移动到第二个方块的位置??第N个方块移动到第N-1个方块的位置。这样连续的移动就是蛇的移动了。方向控制键控制了第一个方块的移动后,后面方块跟着移动 ,这样也实现了方向键控制对长蛇的移动。 5. 食物的随机产生的方法食物的随机产生需要一个随机种子函数然后利用系统时间做为随机种子。 6. 蛇的身体变长的方法当然要当蛇吃到食物时才能使身体变长。因此有两个需要解决的问题:问题一:如何知道是否吃到食物?问题二:吃到食物后身体变长?解决问题一的方法是需要一个判断语句,当蛇头即构成蛇的第一个方块跟食物所在方块的坐标一样时判断吃到食物。解决问题二则要相对复杂一些,需要多个判断语句构成。 7. 游戏结束的方法,当蛇碰到边框时或者吃到自己时游戏结束。根据这个思想可以用判断语句实现 。然后是游戏结束后的处理,比如显示继续玩游戏还是退出游戏,并显示所吃到的食物的个数和时间等。 三、系统设计 1. 总体设计和个模块设计 import javax.swing.*; import java.util.ArrayList; import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; import java.awt.Font; import java.awt.Graphics; import java.awt.event.*; public class Snake extends JFrame { final static int Width = 340; final static int Height = 450; final static int nodeWidth = 10; final static int nodeHeight = 10; //蛇身的坐标 static int x; static int y; //食物的坐标 static int fx; static int fy; static ArrayList Node snakebody;//设置蛇身 static int key ; static int l; static int t; static int speed; static Timer timer; static JLabel b=new JLabel( +l); //计分数的 static JFrame sframe;//框
您可能关注的文档
最近下载
- 精编2025年全国导游大赛《导游业务》完整考题库588题(含标准答案).pdf VIP
- 医务科“十五五”发展规划模板(2026-2030年).docx VIP
- 煤炭工业工程_勘察设计图纸编号.pdf VIP
- 城市景观改造调研报告.doc VIP
- 消防系统调试方案-8wr(精品).doc VIP
- 2025年农业标准化:生物育种技术标准化体系构建与应用研究报告.docx
- 《永遇乐-京口北固亭怀古》课件 2024-2025学年统编版高中语文必修上册.pptx VIP
- 职场性骚扰培训课件.ppt VIP
- 《微弧氧化陶瓷膜》.pdf
- GBT 11345-2023 焊缝无损检测 超声检测 技术、检测等级和评定.pdf VIP
有哪些信誉好的足球投注网站
文档评论(0)