用c++写控制台贪吃蛇游戏完整步骤
要使用的东西。
1.链表,2.结构体,3.系统操作。
创建界面
了解界面的生成和输入
先本地化环境用于在控制台输出中文setlocale(LC_ALL, "");要包含#include <locale.h>
要使用 system函数,要包括头文件windows.h。
1 2 3 4 5 |
|
查看光标发现光标的长宽不匹配,调整cols和lines,来判断那个是长的。
发现调整cols后长变了所以cols是窗口的长。
调整后发现2个长等于一个宽,所以我们设置时要设置2的倍数长
设置我们的游戏界面为25*25,加上边框长乘2,54*27,再加上提示,36长。凑个整
100*30.
发现输出都从左上角开始,所以需要定位光标位置来输出,后续的内容也要运用光标的定位,所以我们要定义一个函数来表示光标定位。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
构建欢迎界面,(简介版)
1 2 3 4 |
|
到下一个界面我们要清空当前界面。
system("cls");来清空界面
1 2 3 |
|
下一步设置我们的提示
按W.S.A.D移动,F4加速,F5减速,space暂停,Esc退出。
定位要的位置输出数据,调整位置让它 看起居中。
1 2 3 4 5 6 |
|
构建游戏界面
构建蛇的活动范围墙
发现高度不够扩高一点到40;下移墙,在顶上标识提示词表明游戏界面。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
右边加入提示词
1 2 3 4 5 6 7 8 9 10 11 12 |
|
发现函数太长了,分别封装成函数。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
|
这样就完成了所有的界面的制作。
游戏本体
创建蛇
蛇由一个个节点组成,用链表来创建。重命名一下方便使用
1 2 3 4 5 |
|
有蛇,有果子,有速度。用一个结构体来表示。
蛇可以用头节点来表示。
果可以看作一个在外的蛇身。
1 2 3 4 5 |
|
还要有状态,方向,总分数,单个果子的权重。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|
初始化一下蛇的身体。
尾插链表来初始蛇身
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
下一步生成果子,要有随机数要包含#include<time.h>
设置随机数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
设置其他数据
1 2 3 4 5 |
|
创建完毕
