[项目实战2]贪吃蛇游戏

目录

贪吃蛇游戏::

一、游戏效果及功能实现:

1.规则

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.基本功能实现

​​​​​​​ ​​​​​​​ ​​​​​​​ 3.技术要点

​​​​​​​ ​​​​​​​ ​​​​​​​ 4.实现思路

​​​​​​​ ​​​​​​​ ​​​​​​​ 5.游戏效果呈现

[二、Win32 API介绍](#二、Win32 API介绍)

​​​​​​​ ​​​​​​​ ​​​​​​​ 1.WindowsAPI函数简单介绍

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.控制台程序(Console)

​​​​​​​ ​​​​​​​ ​​​​​​​ cmd命令窗口打开方式

​​​​​​​ ​​​​​​​ ​​​​​​​ 控制cmd控制台的长度宽度命令

​​​​​​​ ​​​​​​​ ​​​​​​​ title命令

​​​​​​​ ​​​​​​​ ​​​​​​​ 3.vs中的控制台窗口

​​​​​​​ ​​​​​​​ ​​​​​​​ 4.设置控制台相关属性

​​​​​​​ ​​​​​​​ ​​​​​​​ system函数执行系统命令5.控制台屏幕上的坐标COORD

​​​​​​​ ​​​​​​​ ​​​​​​​ 5.GetStdHandle函数

​​​​​​​ ​​​​​​​ ​​​​​​​ 6.GetConsoleCursorInfo函数(检测光标大小和可见性)

​​​​​​​ ​​​​​​​ ​​​​​​​ CONSOLE_CURSOR_INFO

​​​​​​​ ​​​​​​​ ​​​​​​​ 7.SetConsoleCursorInfo(设置光标大小和可见性)

​​​​​​​ ​​​​​​​ ​​​​​​​ 8.SetConsoleCurPosition(设置光标坐标位置)

​​​​​​​ ​​​​​​​ ​​​​​​​ 9.GetAsyncKeyState(获取键盘虚拟键值)

​​​​​​​ ​​​​​​​ ​​​​​​​ 检测键盘输入的内容:"虚拟键代码"

三、贪吃蛇游戏设计与分析

​​​​​​​ ​​​​​​​ ​​​​​​​ 1.地图/界面

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 本地化

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 类项

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ setlocale函数

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 打印宽字符

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 地图坐标

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.蛇身与食物

​​​​​​​ ​​​​​​​ ​​​​​​​ 3数据结构设计

四、具体代码实现

​​​​​​​ ​​​​​​​ ​​​​​​​ 1.文件管理

​​​​​​​ ​​​​​​​ ​​​​​​​ 2.头文件的声明准备

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ define预处理

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 蛇的状态、游戏状态的枚举类型声明

​​​​​​​ ​​​​​​​ ​​​​​​​ 3.控制台的定位

​​​​​​​ ​​​​​​​ ​​​​​​​ 4.隐藏光标

​​​​​​​ ​​​​​​​ ​​​​​​​ 5.游戏界面初始化

​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​欢迎界面

​​​​​​​ ​​​​​​​ ​​​​​​​ 游戏说明界面

​​​​​​​ ​​​​​​​ ​​​​​​​ 游戏准备界面

​​​​​​​ ​​​​​​​ ​​​​​​​ 6.蛇的初始化

​​​​​​​ ​​​​​​​ ​​​​​​​ 7.食物的生成

​​​​​​​ ​​​​​​​ ​​​​​​​ 8.游戏的初始化

​​​​​​​ ​​​​​​​ ​​​​​​​ 9.蛇的移动

​​​​​​​ ​​​​​​​ ​​​​​​​ 蛇头出现

​​​​​​​ ​​​​​​​ ​​​​​​​ 10.吃食物

​​​​​​​ ​​​​​​​ ​​​​​​​ 判定食物

​​​​​​​ ​​​​​​​ ​​​​​​​ 蛇移动、吃食物变长的逻辑

​​​​​​​ ​​​​​​​ ​​​​​​​ 11.死亡判定

​​​​​​​ ​​​​​​​ ​​​​​​​ 撞墙死亡

​​​​​​​ ​​​​​​​ ​​​​​​​ 撞到自身死亡

​​​​​​​ ​​​​​​​ ​​​​​​​ 12.键盘操控相关

​​​​​​​ ​​​​​​​ ​​​​​​​ 加速减速

​​​​​​​ ​​​​​​​ ​​​​​​​ 空格暂停

​​​​​​​ ​​​​​​​ ​​​​​​​ 13.GameStart函数

​​​​​​​ ​​​​​​​ ​​​​​​​ 14.GameRun函数

​​​​​​​ ​​​​​​​ ​​​​​​​ 15.GameEnd函数

五、贪吃蛇源代码展示:

​​​​​​​ ​​​​​​​ snake.h

​​​​​​​ ​​​​​​​ snake.c

​​​​​​​ ​​​​​​​ ​​​​​​​test.c


贪吃蛇游戏::

一、游戏效果及功能实现:

1.规则

2.基本功能实现

3.技术要点

4.实现思路

5.游戏效果呈现

二、Win32 API介绍

1.WindowsAPI函数简单介绍

2.控制台程序(Console)

cmd命令窗口打开方式

控制cmd控制台的长度宽度命令

title命令

3.vs中的控制台窗口

4.设置控制台相关属性

system函数执行系统命令

5.控制台屏幕上的坐标COORD

6.GetStdHandle函数

7.GetConsoleCursorInfo函数(检测光标大小和可见性)

CONSOLE_CURSOR_INFO

8.SetConsoleCursorInfo(设置光标大小和可见性)

9.SetConsoleCurPosition(设置光标坐标位置)

10.GetAsyncKeyState(获取键盘虚拟键值)

检测键盘输入的内容:"虚拟键代码"

三、贪吃蛇游戏设计与分析

1.地图/界面

<locale.h>本地化

类项

setlocale函数

打印宽字符

地图坐标

2.蛇身与食物

3数据结构设计

四、具体代码实现

1.文件管理

2.头文件的声明准备

define预处理

蛇的状态、游戏状态的枚举类型声明

3.控制台的定位

4.隐藏光标

5.游戏界面初始化

欢迎界面

游戏说明界面

游戏准备界面

6.蛇的初始化

7.食物的生成

8.游戏的初始化

9.蛇的移动

蛇头出现

10.吃食物

判定食物

蛇移动、吃食物变长的逻辑

11.死亡判定

撞墙死亡

撞到自身死亡

12.键盘操控相关

加速减速

空格暂停

13.GameStart函数

14.GameRun函数

15.GameEnd函数

五、贪吃蛇源代码展示:

Snake.h

Snake.c

Test.c

相关推荐
林开落L4 小时前
从零开始学习Protobuf(C++实战版)
开发语言·c++·学习·protobuffer·结构化数据序列化机制
林开落L4 小时前
从入门到了解:Protobuf、JSON、XML 核心解析(C++ 示例)
xml·c++·json·protobuffer·结构化数据序列化机制
牛奔4 小时前
Go 是如何做抢占式调度的?
开发语言·后端·golang
Queenie_Charlie4 小时前
stars(树状数组)
数据结构·c++·树状数组
符哥20084 小时前
C++ 进阶知识点整理
java·开发语言·jvm
小猪咪piggy4 小时前
【Python】(4) 列表和元组
开发语言·python
会周易的程序员4 小时前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
静听山水4 小时前
Redis核心数据结构-Set
数据结构·数据库·redis
難釋懷4 小时前
Lua脚本解决多条命令原子性问题
开发语言·lua
爱装代码的小瓶子5 小时前
【C++与Linux基础】进程间通讯方式:匿名管道
android·c++·后端