收藏 分享(赏)

贪吃蛇游戏C源代码.doc

上传人:hyngb9260 文档编号:6319338 上传时间:2019-04-07 格式:DOC 页数:5 大小:32KB
下载 相关 举报
贪吃蛇游戏C源代码.doc_第1页
第1页 / 共5页
贪吃蛇游戏C源代码.doc_第2页
第2页 / 共5页
贪吃蛇游戏C源代码.doc_第3页
第3页 / 共5页
贪吃蛇游戏C源代码.doc_第4页
第4页 / 共5页
贪吃蛇游戏C源代码.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、贪吃蛇游戏 C 源代码.txt“恋”是个很强悍的字。它的上半部取自“变态”的“变” ,下半部取自“变态”的“态” 。贪吃蛇游戏 C 源代码2007 年 10 月 28 日 星期日 15:55#define N 200#include #include #include #define LEFT 0x4b00#define RIGHT 0x4d00#define DOWN 0x5000#define UP 0x4800#define ESC 0x011bint i,key;int score=0;/*得分*/int gamespeed=50000;/*游戏速度自己调整*/struct Foodi

2、nt x;/*食物的横坐标*/int y;/*食物的纵坐标*/int yes;/*判断是否要出现食物的变量*/food;/*食物的结构体*/struct Snakeint xN;int yN;int node;/*蛇的节数*/int direction;/*蛇移动方向*/int life;/* 蛇的生命,0 活着,1 死亡*/snake;void Init(void);/*图形驱动*/void Close(void);/*图形结束*/void DrawK(void);/*开始画面*/void GameOver(void);/*结束游戏*/void GamePlay(void);/*玩游戏具体过

3、程*/void PrScore(void);/*输出成绩*/*主函数*/void main(void)Init();/*图形驱动*/DrawK();/*开始画面*/GamePlay();/*玩游戏具体过程*/Close();/*图形结束*/*图形驱动*/void Init(void)int gd=DETECT,gm;initgraph(cleardevice();/*开始画面,左上角坐标为(50,40) ,右下角坐标为(610,460)的围墙*/void DrawK(void)/*setbkcolor(LIGHTGREEN);*/setcolor(11);setlinestyle(SOLID_

4、LINE,0,THICK_WIDTH);/*设置线型*/for(i=50;i0;i-)/*蛇的每个环节往前移动,也就是贪吃蛇的关键算法*/snake.xi=snake.xi-1;snake.yi=snake.yi-1;/*1,2,3,4 表示右,左,上,下四个方向,通过这个判断来移动蛇头*/switch(snake.direction)case 1:snake.x0+=10;break;case 2: snake.x0-=10;break;case 3: snake.y0-=10;break;case 4: snake.y0+=10;break;for(i=3;i595|snake.y0455

5、)/*蛇是否撞到墙壁*/GameOver();/*本次游戏结束*/snake.life=1; /*蛇死*/if(snake.life=1)/*以上两种判断以后,如果蛇死就跳出内循环,重新开始*/break;if(snake.x0=food.x/*把画面上的食物东西去掉*/rectangle(food.x,food.y,food.x+10,food.y-10);snake.xsnake.node=-20;snake.ysnake.node=-20;/*新的一节先放在看不见的位置,下次循环就取前一节的位置*/snake.node+;/*蛇的身体长一节*/food.yes=1;/*画面上需要出现新的

6、食物*/score+=10;PrScore();/*输出新得分*/setcolor(4);/*画出蛇*/for(i=0;isnake.node;i+)rectangle(snake.xi,snake.yi,snake.xi+10,snake.yi-10);delay(gamespeed);setcolor(0);/*用黑色去除蛇的的最后一节*/rectangle(snake.xsnake.node-1,snake.ysnake.node-1,snake.xsnake.node-1+10,snake.ysnake.node-1-10); /*endwhile(!kbhit)*/if(snake.

7、life=1)/*如果蛇死就跳出循环*/break;key=bioskey(0);/*接收按键*/if(key=ESC)/*按 ESC 键退出*/break;elseif(key=UPelseif(key=RIGHTelseif(key=LEFTelseif(key=DOWN/*endwhile(1)*/*游戏结束*/void GameOver(void)cleardevice(); PrScore();setcolor(RED);settextstyle(0,0,4);outtextxy(200,200,“GAME OVER“);getch();/*输出成绩*/void PrScore(void) char str10;setfillstyle(SOLID_FILL,YELLOW);bar(50,15,220,35);setcolor(6);settextstyle(0,0,2);sprintf(str,“score:%d“,score);outtextxy(55,20,str);/*图形结束*/void Close(void) getch();closegraph();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 游戏攻略

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报