资源简介

利用VS2013平台 c++语言写的贪吃蛇小游戏。源码手打,经过测试可以直接运行。用VS打开项目sln文件即可。

资源截图

代码片段和文件信息


#include“snake.h“

//声明函数
void InitSnake();

void drawsnake();

void movesnake();

void changesnakech();

void coorfood();

void drawfood();

void eatfood();




//主函数
int main()
{

 InitSnake();
 
 //setbkcolor(GREEN);

 //cleardevice();



 while (1)
 {
 while (!kbhit())
 {
 if (food.flag == 0)
 {
 coorfood();
 }
 cleardevice();
 drawfood();
 movesnake();
 drawsnake();
 eatfood();
 Sleep(100);
 }
 changesnakech();
 };

return 0;
}

//初始化界面
void InitSnake()
{

//初始化随即种子
srand((unsigned int)time(NULL));

//初始化界面
initgraph(640 480);


//初始化音乐
mciSendString(L“OPEN BGM.MP3 alias BGM“000);
mciSendString(L“Play BGM“ 0 0 0);

//初始化蛇
snake.n = 2;
snake.ch = right;
snake.szb[0].x = 10;
snake.szb[0].y = 0;
snake.szb[1].x = 0;
snake.szb[1].y = 0;
}

//绘制蛇
void drawsnake()//10为蛇粗细
{
setlinecolor(RED);
setfillcolor(YELLOW);
//遍历数组,寻找数组中每一个元素的值
for(int i = 0; i < snake.n; i++ )
{
fillrectangle(snake.szb[i].x snake.szb[i].y 
snake.szb[i].x + 10 snake.szb[i].y + 10);
}
}

//蛇移动
void movesnake()
{
for (int i = snake.n - 1; i > 0; i--)
{
snake.szb[i].x = snake.szb[i - 1].x;
snake.szb[i].y = snake.szb[i - 1].y;
}
//如果 右 x+=10;
// 左 x-=10; 上 y-=10; 下 y+=10;
switch (snake.ch)
{
case up:
snake.szb[0].y -= 10;
break;
case down:
snake.szb[0].y += 10;
break;
case left:
snake.szb[0].x -= 10;
break;
case right:
snake.szb[0].x += 10;
break;
}
}

//键入蛇的移动方向
void changesnakech()
{
int move = getch();
switch (move)
{
case up:
if (snake.ch!=down)
snake.ch = up;
break;
case left:
if (snake.ch != right)
snake.ch = left;
break;
case right:
if (snake.ch != left)
snake.ch = right;
break;
case down:
if (snake.ch != up)
snake.ch = down;
break;
}
}

//计算食物位置
void coorfood()
{
food.fzb.x = rand() % 64*10;
food.fzb.y = rand() % 48*10;

food.flag = 1;
}

//绘制食物
void drawfood()
{
fillroundrect(food.fzb.x food.fzb.y food.fzb.x+10 food.fzb.y+101010);
}

//吃食物
void eatfood()
{
if (snake.szb[0].x == food.fzb.x&&snake.szb[0].y == food.fzb.y)
{
snake.n++;
food.flag = 0;
}

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     104960  2018-06-11 16:28  贪吃蛇\Debug\贪吃蛇.exe

     文件     698948  2018-06-11 16:28  贪吃蛇\Debug\贪吃蛇.ilk

     文件     797696  2018-06-11 16:28  贪吃蛇\Debug\贪吃蛇.pdb

     文件    8558813  2017-06-09 14:51  贪吃蛇\贪吃蛇\BGM.mp3

     文件     527360  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\vc120.idb

     文件     167936  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\vc120.pdb

     文件       1963  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.log

     文件      37397  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.obj

     文件        518  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog\cl.command.1.tlog

     文件      20216  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog\CL.read.1.tlog

     文件        240  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog\CL.write.1.tlog

     文件        914  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog\link.command.1.tlog

     文件       2580  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog\link.read.1.tlog

     文件        220  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog\link.write.1.tlog

     文件        150  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog\贪吃蛇.lastbuildstate

     文件        438  2018-06-11 10:44  贪吃蛇\贪吃蛇\snake.h

     文件       2361  2018-06-11 16:28  贪吃蛇\贪吃蛇\贪吃蛇.cpp

     文件       4093  2018-06-10 21:41  贪吃蛇\贪吃蛇\贪吃蛇.vcxproj

     文件       1068  2018-06-10 21:41  贪吃蛇\贪吃蛇\贪吃蛇.vcxproj.filters

     文件   29818880  2018-09-04 11:00  贪吃蛇\贪吃蛇.sdf

     文件        973  2018-06-10 20:21  贪吃蛇\贪吃蛇.sln

    ..A..H.     20480  2018-09-04 11:00  贪吃蛇\贪吃蛇.v12.suo

     目录          0  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug\贪吃蛇.tlog

     目录          0  2018-06-11 16:28  贪吃蛇\贪吃蛇\Debug

     目录          0  2018-06-11 16:23  贪吃蛇\Debug

     目录          0  2018-06-11 16:28  贪吃蛇\贪吃蛇

     目录          0  2018-09-04 11:00  贪吃蛇

----------- ---------  ---------- -----  ----

             40768204                    27



............此处省略0个文件信息

评论

共有 条评论