#只讲逻辑不讲一些基础,基础大概过一遍就行#
project-one: 无 (gitee.com)仓库里面有原代码
一、基础工作
1、先将你的编译器换成32位环境,也就是x86,
如果是控制台主机窗口则管,若不是需要改为控制台主机窗口
打开运行窗口后点击那个,向下的箭头
再点击设置
默认终端应用程序改为控制台主机
2、创建三个文件,两个.c文件,一个.h文件。下图供参考
3、为了避免麻烦直接包含所需要用到的头文件
4、在你的 .c 文件中包含 .h的头文件
5、完成头文件里的预先设定
关于蛇结构体的成员的创建
6、进入你的主函数里,我们需要先干的几件事,随机数生成(生成食物时会用到)、修改窗口大小(方便后续的绘图)、本地化、隐藏光标,游戏运行函数
窗口大小
我的窗口大小差不多就是这么大,到绘制地图那里细讲大小的调整。
本地化的设置就需要头文件locale.h,可直接照抄影响不大
隐藏光标函数
名字是自己起的可更改,里面的函数就是系统自己的函数了,不能改名字,用到的头文件 windows.h,可以直接套用无需其他设计
7、来到我的测试函数了
可以先不用管下面的代码,到时候你可按照自己的逻辑设计
二、开始界面函数
我调用了两个函数实现开始界面
1、欢迎函数
需要说的只有一个光标定位函数(在地图绘制那里可以找到),光标定位函数,指定光标的起始位置打印。
我这个写出来就是这样,有点歪了,你们可以微调,需要改什么注意光标的位置就行。
这个俩个任意键继续是因为那两个暂停的代码。
2、地图绘制
建议在excel表格中画出你整个整个窗口的大小,我这个因为一开始写的时候我就直接先画的游戏的地图,外加改了很多次,可做参考,
值得注意的是一个 纵坐标对应两个横坐标
黄色和绿色分别是地图方块,如下图,绿色自己就是 y坐标(纵坐标),橙色是x坐标,因为一个汉字占两个空间,
光标定位函数是自己写的,直接用就完了。
我这里一共 36 个方块一个方块两个 x 坐标, x 和 y 都是从 0 开始的
所以x坐标到 70 结束包含 70
y坐标只看中间,为29个方块,一共是31个方块,最下面的 y坐标是30
三、初始化,及帮组信息打印
界面展示
函数主体展示
1、打印帮助信息
没什么好说,找到对应的位置打印出帮助信息,如果打印出来效果不对,请调整坐标,可能是超过窗口范围了。
2、创建蛇身体
身体是身体的符号,我做了区分的
先创建头,再创建蛇的身体,创建的时候连在一起,相当于是一个单链表,x坐标得是2的倍数就行。
3、初始化食物
我的初始化食物函数,自带打印功能,所以在吃掉一个食物时可以直接调用
4、信息初始化
方向设为左,状态正常,一个食物分数1分,总分数 0,睡眠时间200毫秒
5、打印出蛇身
遍历加打印
四、游戏运行逻辑
按键判断函数宏,如果这个键被按过返回1否则为0, 这个在头文件里面
1、按键判断
2、蛇每走一步我们需要干嘛,Snakemove();
1、连接节点
2、新节点判断
撞墙和撞自己修改状态就行。由end函数来审判
五、结束操作
末尾操作
更新书写规范
perror报错时不要自己添加行号,因为可能会随着代码的更改行号会变,可以加个函数名