当前位置:   article > 正文

基于easyx和C语言的简易贪吃蛇游戏源码_c语言easyx制作游戏

c语言easyx制作游戏

一、描述

下载链接: 基于easyx和C语言的简易贪吃蛇游戏源码.

二、程序要求

	1、蛇可以穿墙移动
	2、随机生成食物
	3、显示分数
	4、蛇撞到身体即死亡
  • 1
  • 2
  • 3
  • 4

三、程序设计及思路

在这里插入图片描述
根据上图,我们需要:
1、创建图形窗口并设置背景颜色(根据个人选择,可以使用默认黑色背景)。
2、蛇的结构体
3、食物的结构体
4、蛇的移动、吃食物变长
5、食物重新生成
6、死亡判定
7、绘制分数等

一)蛇和食物的结构体属性

struct Snake
{
   
	int speed;		//蛇的移动速度
	int dir;		//蛇的方向
	int r;			//蛇的大小
	int size;		//蛇的长度
	POINT num[MAX];	//每一节蛇的坐标
	int score;		//分数
	int flag;		//存在标志
}snake;

struct  Food
{
   
	int x;			//食物的坐标
	int y;
	int r;			//实物的大小
	COLORREF color;	//实物的颜色
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

二)初始化

//游戏初始化
void GameInit()
{
   
	mciSendString("close DIE", 0, 0, 0);
	mciSendString("open ./ress/snake_bgm.mp3 alias BGM", 0, 0, 0);
	mciSendString("play BGM repeat", 0, 0, 0);
	srand(GetTickCount());			//设置随机数种子
	initgraph(WIDTH, HEIGHT);
	setbkcolor(RGB(140, 186, 236));	//设置背景颜色
	settextcolor(BLACK);			//设置字体颜色及样式
	settextstyle(30, 0, "黑体");
	//蛇初始化
	snake.dir = UP;
	snake.speed = 16;
	snake.r = 8;
	snake.size = 3;
	snake.num[0] = {
    WIDTH / 2, HEIGHT / 2 };
	snake.num[1] = {
    WIDTH / 2, HEIGHT / 2 + 16}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/358855
推荐阅读
相关标签
  

闽ICP备14008679号