- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
目录
一.功能描述 2
二.基本原理 2
三、设计的具体实现 3
(1)函数定义 3
(2 )主函数main( ) 4
(3 )画界面函数DrawK( ) 5
(4 )游戏具体过程函数GamePlay () 5
(5 )游戏结束函数GameOver () 8
四、调试及解决方法 10
五、测试结果 10
六、设计心得体会 12
七、参考文献 12
八、源代码 13
1
一.功能描述
基本功能:开始蛇向右方移动。按键盘上定义的上下左右键,蛇改变游动的方向,可以
上下左右游动。蛇不能碰到图中的灰色栅栏,如碰到游戏结束。若蛇碰到图中一粒豆子,
则豆子被蛇吃掉,图中的豆子消失,蛇身变长。
最终所有的豆子都被吃掉,游戏结束。
增强要求:
(1) 必须改进游戏的界面,增加显示相关的统计信息。左边的显示区保持不变,
右边动态显示积分和总时间统计信息,其中积分栏目显示当前已经吃下的豆
子数目,总时间显示本局游戏从开始到现在经过的时间。
(2) 优化主程序,注意CPU 和内存的使用效率。
(3) 考虑一个合理的得分算法,得分值应该取决于吃下去的豆子和游戏持续的时
间。
(4) 得分可以在发光二极管上显示出来。
二.基本原理
游戏开始后进入游戏界面.首先初始化蛇的坐标,食物的坐标.线程基本流程:判断是
否是暂停阶段,是否有有退出按键,游戏是否有结束,如果都没有就执行, 如果游戏结束了
就重新游戏或者退出。开启键盘功能,实现通过方向键来控制蛇的移动方向; 开启数码
管功能,实现蛇吃到食物后能够更新和显示分数; 利用变量,实现吃了 6 个食物后,游戏
能够结束,并能通过增加蛇的移动速度来增加游戏的难度。
2
三、设计的具体实现
(1)函数定义
函数定义是对各
基础函数的定义,并且设置需要运用的信息,便于调用
#define N 200
#define M 200
#includegra
phics.h
#includestdlib.h
#includestdio.h
#includestring.h
#includeiostream.h
#includedos.h
#includeconio.h
#include windows.h
#define LEFT 97//A
#define RIGHT 100//D
#define DOWN 115//S
#define UP 119//W
#define Esc 0x011b
int i,key;
int score=0;
int gamespeed=250;//游戏速度可根据实际情况自行调整
struct Food
{
int x;//食物的横坐标
int y;//食物的纵坐标
int yes;//判断是否要出现食物的变量
}food;//食物的结构体
3
struct Snake
{
int x[M];
int y[M];
int node;//蛇的节数
int direction;//蛇的移动方向
int life;//蛇的生命,0 表示活着,1 表示死亡
}snake;
void Init();//图形驱动
void Close();//图形结束
void DrawK();//开始画面
void GamePlay();//玩游戏的具体过程
void GameOver();//游戏结束
void PrScore();//输出成绩
(2)主函数 main( )
主函数是程序的主流程,首先定义使用到的常数、全局变量及函数原型说明,然后初
始化图形系统,调用函数 DrawK()画出开始画面,调用函数
原创力文档


文档评论(0)