栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++简易贪吃蛇程序(主打一个入手快,易懂,有成就感嘿嘿)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++简易贪吃蛇程序(主打一个入手快,易懂,有成就感嘿嘿)

#include 
#include 
#include 
#include //C

using namespace std;
bool gameOver;//布尔判断游戏是否结束
const int width = 40;//画板40*20
const int height = 20;
int x, y, fruitx, fruity, score;
int tailX[100], tailY[100];
int nTail;

enum eDirection { STOP = 0, LEFT, RIGHT, UP, DOWN };
eDirection dir;//枚举上下左右

void Setup()//游戏初始化
{
	gameOver = false;
	dir = STOP;
	x = width / 2;//小蛇出生位置坐标
	y = height / 2;
	fruitx = rand() % width;//随机生成水果坐标
	fruity = rand() % height;
	score = 0;
}
void Draw()//画布
{
	system("cls");//Linux用"clear"cpu刷新
	cout << "          贪吃蛇小游戏   游戏规则" << endl;
	cout << "  使用小键盘↑↓←→控制小蛇吃果子(F),"< width || x<0 || y>height || y < 0)//不允许穿墙
	{
		int x;
		gameOver = true;
		cout << "gameover!a";
		x = MessageBox(GetForegroundWindow(), "您撞墙啦,游戏结束!", "gameover!", 1);
	}

	
		
	for (int i = 0; i < nTail; i++)//不允许吃自己
		if (tailX[i] == x && tailY[i] == y)
		{
			int x;
			gameOver = true;
			cout << "gameover!a";
			x = MessageBox(GetForegroundWindow(), "您吃到自己啦,游戏结束!", "gameover!", 1);
			
		}
	if (x == fruitx && y == fruity)//水果被吃后重新生成,并且加十分
	{

		score += 10;
		fruitx = rand() % width;
		fruity = rand() % height;
		nTail++;
	}
}

int main(int argc, char **argv)
{
	Setup();
	while (!gameOver)
	{
		Draw();
		Input();
		Logic();
		Sleep(20); Sleep(20);//调节小蛇速度

	}
	return 0;
}

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/395872.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号