《结对-结对编程项目作业名称-结对项目总结》
一. 项目背景:
“贪吃蛇”是一款经典的游戏,他因操作简单,娱乐性强而广受欢迎。本文基于Java技术,开发一个操作简单,功能较全的“贪吃蛇”游戏。
二。功能说明
1.使用上下左右四个按键对贪吃蛇进行控制,让贪吃蛇吃到食物,并且不能碰到自身和墙壁。
2.每吃到一个食物,蛇身会增长一个单位
3.初始场景随机出现食物,当食物被吃掉后,再次生成食物。
4.有计分机制,每吃到一个食物,增加一个分值。
三。设计思路
这个程序的关键是表示蛇的图形以及蛇的移动。用一个小矩形表示蛇的一节身体,身体每长一节,增加一个矩形块。移动时必须从蛇头开始,所以蛇不能向相反方向移动,也就是蛇尾不能改作蛇头。如果不按任何键,蛇自行在当前方向上前移,当游戏者按了有效的方向键后,蛇头朝着指定的方向移动,一步移动一节身体,所以当按了有效的方向键后,先确定蛇头的位置,然后蛇身体随着蛇头移动,图形的实现是从蛇头的新位置开始画出蛇,这时原来蛇的位置和新蛇的位置差一个单位,所以看起来蛇会多一节身体,所以将蛇的最后一节用背景色覆盖。食物的出现和消失也是画矩形块和覆盖矩形块。
四。技术要点
1.蛇身的处理
2.蛇身运动的处理
3.食物的产生
4.吃到食物,碰墙壁,碰自身的处理。
5.绘图
五。系统设计难点及解决办法
1.这个程序的关键是表示蛇的图形以及蛇的移动。用一个小矩形表示蛇的一节身体,身体每长一节,增加一个矩形块。移动时必须从蛇头开始,所以蛇不能向相反方向移动,也就是蛇尾不能改作蛇头。如果不按任何键,蛇自行在当前方向上前移,当游戏者按了有效的方向键后,蛇头朝着指定的方向移动,一步移动一节身体,所以当按了有效的方向键后,先确定蛇头的位置,然后蛇身体随着蛇头移动,图形的实现是从蛇头的新位置开始画出蛇,这时原来蛇的位置和新蛇的位置差一个单位,所以看起来蛇会多一节身体,所以将蛇的最后一节用背景色覆盖。食物的出现和消失也是画矩形块和覆盖矩形块
2.检测蛇有无撞到食物、围墙或是自己的身体。当蛇开始移动之后,需要判断蛇头要移动到的新的位置的情况,然后根据新位置是空白、食物、围墙还是蛇的身体来做出相应的操作。
3.事物的随机产生。当食物被吃掉后,要在场景中重新随机产生。
转载于:https://www.cnblogs.com/dinghongtao/p/7788531.html
《结对-结对编程项目作业名称-结对项目总结》相关推荐
- ComeFuture英伽学院——2020年 全国大学生英语竞赛【C类初赛真题解析】(持续更新)
视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...
- ComeFuture英伽学院——2019年 全国大学生英语竞赛【C类初赛真题解析】大小作文——详细解析
视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...
- 信息学奥赛真题解析(玩具谜题)
玩具谜题(2016年信息学奥赛提高组真题) 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业.有一天, 这些玩具小人把小南的眼镜藏了起来.小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的 ...
- 信息学奥赛之初赛 第1轮 讲解(01-08课)
信息学奥赛之初赛讲解 01 计算机概述 系统基本结构 信息学奥赛之初赛讲解 01 计算机概述 系统基本结构_哔哩哔哩_bilibili 信息学奥赛之初赛讲解 02 软件系统 计算机语言 进制转换 信息 ...
- 信息学奥赛一本通习题答案(五)
最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...
- 信息学奥赛一本通习题答案(三)
最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...
- 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题
第1章 快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章 素数 第 3 章 约数 第 4 章 同余问题 第 5 章 矩阵乘法 第 6 章 ...
- 信息学奥赛一本通题目代码(非题库)
为了完善自己学c++,很多人都去读相关文献,就比如<信息学奥赛一本通>,可又对题目无从下手,从今天开始,我将把书上的题目一 一的解析下来,可以做参考,如果有错,可以告诉我,将在下次解析里重 ...
- 信息学奥赛一本通(C++版) 刷题 记录
总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 刷题 记录 http://ybt.ssoier. ...
- 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离
首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...
最新文章
- dbf如何导入oracle_「赵强老师」第一个Oracle的手工管理的备份和恢复
- java 快排和堆排序
- 谁说PCB布线不能走直角。。。
- EFCore+Mysql仓储层建设(分页、多字段排序、部分字段更新)
- 5 thinkpad 黑将评测_王中林院士团队黑科技:80秒,将PM 2.5降至0!把森林氧吧搬回家!...
- 【USACO2006 Mar】滑雪缆车 skilift
- mysql输出美式报表_Navicat for MySQL 如何预览报表
- android拍照功能编程,android实现手机App实现拍照功能示例
- 新骗子举报收录系统源码
- matlab中定点数16位转为14位,如何使用python将浮点数转换为具有预定义位数的固定点...
- Ext.Net 学习 之 GridPanel、 Store 取值
- 计算机图形设计案例,9《计算机图形图像的设计的案例实训题.doc
- 虚拟化arm服务器,服务器虚拟化领域的ARM处理器与RISC技术
- 深度linux网卡配置,Deepin 15.11 命令行配置静态IP
- 服务器win10虚拟内存设置,win10虚拟内存设置多少合适?这样设置就最好!
- 应急响应之windows进程排查
- 生态对对碰|云和恩墨数据库云管平台 zCloud 最新支持 TiDB
- 公司固定资产该哪个部门管理,一般公司固定资产怎么管理
- 【手册】如何编译/修改三星手机Rom(三)
- Elasticsearch解决只能查询10000条数据以及查询的total为10000条的解决方案