叱咤风云☞贪吃蛇

论初学C时一起做过的那些事

Hello,大家好,今天我们就来说一说,刚入门C语言做过的小游戏,本人小白白一枚,初次发文,望路过的大佬勿喷,有不足指出请与指正(0^0)

01游戏初衷

大家都有玩过贪吃蛇的小游戏,在智能手机还未问世的时候,手持诺基亚黑白手机玩个贪吃蛇、推箱子是多么的不亦乐乎,我们要想写一个贪吃蛇,我们得有一个大概的思路去逐个进行,我们大概的了解了下游戏本身,例如:蛇的身体,怎么让蛇动起来,还得有围墙,让蛇可以吃东西增加自身的长度等等。那么我们知道了大概的思路就差不多知道一个贪吃蛇的游戏是怎么实现的了,就是一个一个的小功能模块组装到一起进行的。
在这里插入图片描述
废话不多说,我们开始实战部分:如下

02代码区

头文件和源文件
这里我为了好区分没有把代码放到一个cpp文件里,那样自己看着看着就会懵逼了,最重要的是一定咬注释,不然到时候自己都看不懂#^ ^#

  • Music.h:内容如下
#pragma once
#include <windows.h>
#pragma comment(lib, "Winmm.lib")//For MCI(Media Control Interface,媒体控制接口)
void Music();
  • Music.cpp:内容如下
#include "Music.h"
void Music()
{
   
	mciSendString("play E:\\C_project\\Snake\\DZZ.mp3", NULL, 0, NULL);
}

  • 欢迎.h:内容如下
#pragma once
#define 开始游戏 1
#define 加载游戏 2
#define 游戏帮助 3
#define 关于 4
#define 退出游戏 5
void gotoxy(int x, int y);  //定位坐标打印
void Drawing();  //蛇身图形
void Option(); //游戏选项菜单
void Optionone();//游戏选项1
void Optiontwo();//游戏选项2
void Optionthree();//游戏选项3
void Optionfour();//游戏选项4
  • 欢迎.cpp:内容如下
//设置用户欢迎界面和选择
#include <Windows.h>
#include <stdio.h>
#include "全局颜色.h"
#include "欢迎.h"
#include "Music.h"
#include "判断输入.h"
//在某一个坐标的位置上,打印一串字符
void gotoxy(int x, int y)
{
   
	COORD pos = {
   x,y};
	HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);//这个句柄代表的就是控制台屏幕的输出接口
	SetConsoleCursorPosition(hOut, pos);
}
//显示snake的图画
void Drawing()
{
   
	Music();
	gotoxy(32, 4);
	color(12);
	printf("_______/");

	gotoxy(31, 4);
	color(2);
	printf("|");

	gotoxy(42, 4);
	color(10);
	printf("\\");

	gotoxy(32, 5);
	color(2);
	printf("\\______ "); //蛇嘴

	gotoxy(43, 5);
	color(10);
	printf("\\");

	gotoxy(34, 1);
	color(6);
	printf("/^\\/^\\"); //蛇眼睛

	gotoxy(34, 2);
	printf("|0_|0_|"); //蛇眼睛

	gotoxy(33, 2);
	color(2);
	printf("_");

	gotoxy(25, 3);
	color(12);
	printf("\\/");//蛇信

	gotoxy(31, 3);
	color(2);
	printf("/");

	gotoxy(37, 3);
	color(6);
	printf("\\_/");//蛇眼睛

	gotoxy(41, 3);
	color(10);
	printf("\\");

	gotoxy(26, 4);
	color(12);
	printf("\\_____");//舌头

	gotoxy(31, 4);
	color(10);
	printf("\\");

	gotoxy(32, 4);
	color(12);
	printf("_________/");

	gotoxy(38, 6);
	color(10);
	printf("&    &");

	gotoxy(37, 7);
	printf("&    &           &^&^&^&^&^&");

	gotoxy(36, 8);
	printf("&    &          &^          ^&");

	gotoxy(35, 9);
	printf("&    &         &^    &^&^&     &             _- * -_ _");

	gotoxy(34, 10);
	printf("&    &         &^   &^     ^&    &          &~         >");

	gotoxy(33, 11);
	printf("&    &^        &^   &^       ^&    &       &~      _ - *");

	gotoxy(33, 12);
	printf("&    &        &^   &^         ^&    &    &~      &~");

	gotoxy(34, 13);
	printf("&    &^&^&^&^    &^           ^&    &^&~      &~");

	gotoxy(35, 14);
	printf("&             &^               &           &~");

	gotoxy(36, 15);
	printf("~&~&~&~&~&~&~                  ~&~&~&~&~&~   ");

	gotoxy(40, 18);
	color(13);
	printf("* * * * * 欢 迎 进 入 游 戏  * * * * *\n");
}
//游戏选择菜单
void Option()
{
   
	system("mode con cols=100 lines=40");
	printf<
  • 10
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值