记忆大比拼游戏,C语言GUI编程之数字记忆游戏-项目构建

极简大道 极简大道 2022-12-05 超级记忆术 阅读: 160
摘要: 学以致用,为了使C语言的学习和运用不那么枯燥,做一些GUI项目,所见即所得,能够激发兴趣,也有更大的成就感。使用EasyXEasyX 是针对 C++ 的图形库,可以帮助 C/C++ 初学者快速上手图形和游戏编程。EasyX支持VC++以及Visual Studio,我使用的是Visual Studio 2022。

学以致用,为了使C语言的学习和运用不那么枯燥,做一些GUI项目,所见即所得,能够激发兴趣,也有更大的成就感。

使用EasyX

EasyX 是针对 C++ 的图形库,可以帮助 C/C++ 初学者快速上手图形和游戏编程。

EasyX支持VC++以及Visual Studio,我使用的是Visual Studio 2022。

去官网下载最新版安装即可,会自动识别Visual Studio的库文件夹路径并,这点很方便。

安装EasyX

产品说明

游戏玩法

游戏玩法挺简单的,就是随机几个数字到棋盘格子上,过几秒后数字隐藏掉,玩家按照数字大小顺序点击对应的格子,正确地点击完数字即闯关成功,每闯一关增加一个数字。

核心功能

游戏的玩法实现是项目的核心功能,从关卡初始化到关卡的升级,最终到关卡结束。

数字记忆游戏

功能扩展

  • 计时器:显示闯关所用的时间

  • 排行榜:输入玩家昵称,展示TOP10的闯关时间

  • 设置中心:背景音乐开关、游戏中的音效

项目开发

产品需求

项目立项开发前要了解完整的产品需求,然后去做技术选型以及人员的配置,并制定出项目的开发周期和重要节点。这里我们简单列一下产品的功能。

产品功能

模块拆分

项目开发需要多人配合,所以要做模块拆分,不同的人完成不同的功能模块。即使只有一个人开发,也要做好规划,分清主次。下面是对本项目简单的模块拆分。

模块拆分

如果模块A中需要调用模块B中的函数,而模块B还没有开发,那么我们通常的做法是在模块B中定义一个空白函数(规定好输入输出),这样不会打断模块A的开发进程,等A阶段性完成之后再去完善模块B中的函数即可。

文件规划

项目文件的目录结构一般都是根据模块划分来定的。

  • 配置文件:存放一些常量,比如游戏要素、颜色、文本信息等

  • 二进制文件:保存游戏过程中的数据,比如排行榜、游戏设置等,本项目没必要使用专业的数据库,用二进制文件来存储数据即可

  • 数据模型文件:把游戏里的要素抽象成数据模型,比如数字卡片数据结构包含数字、坐标、下一个数字等

  • 游戏画面绘制文件:负责游戏的初始化绘制、关卡信息提示等

  • 游戏逻辑控制文件:数字卡牌点击反馈、关卡切换、用户输入等交互性的逻辑

  • 定时器、排行榜、游戏设置三个文件

编程思想

C语言是面向过程的语言,但我们尽量使用面向对象的思想去编程,把业务拆分、解耦,然后进行模块化开发。

具体到模块功能的开发,根据实际情况再去实现具体每个小功能程序的算法,到最后连接起来就串通了整个项目。

之前《C程序设计》中提到算法是程序的灵魂,而现在我们所做的就是给出了这个“数字记忆游戏”的算法思路。

接下来就让我们一起学习,通过实战来真正的掌握C语言!

其他相关

记数字游戏能锻炼,当经典卡牌与经典战棋相遇之后,《破月勇者》就诞生了

作者: 极简大道 时间:2022-12-05 阅读: 154
在“让卡牌游戏真的动起来”这件事上,《破月勇者》又往前迈出了一大步。2022年9月30日,游戏开发商Unknown Worlds Entertainment(UW),在Steam平台开启新作《破月勇者》(Moonbreaker)的抢先体验,这也是他们首次聚焦于策略与桌面模拟游戏。...

记数字顺序的游戏,《神领编年史》,做成手游可能更合适些

作者: 极简大道 时间:2022-12-05 阅读: 195
在《神领编年史( The DioField Chronicle)》刚刚登上steam页面的时候,我就对这款游戏的介绍产生了兴趣。SE居然标榜了自己游戏的玩法,整出来一个“RTTB”,这种游戏类型倒还是闻所未闻,所谓的“深奥且即富策略性的即时战斗系统”多少勾起我对这款游戏的一些想象。...
记一次游戏数字陷阱,五上数学 第三单元 用计算器探索规律 逐字稿

记一次游戏数字陷阱,五上数学 第三单元 用计算器探索规律 逐字稿

作者: 极简大道 时间:2022-12-05 阅读: 280
(bluehouse456 全文整理)很高兴能和大家一起学习人教版五年级上册第三单元小数除法中用计算器探索规律这节课。同学们,你们喜欢玩游戏吗?咱们先来玩一个猜数字的游戏。游戏规则是这样的。从一到九这九个数字中选一个你最喜欢的,记在心里。...

瞬时记忆数字的游戏,「7.0」《神领编年史》,做成手游可能更合适些

作者: 极简大道 时间:2022-12-05 阅读: 191
文/耶利亚在《神领编年史( The DioField Chronicle)》刚刚登上steam页面的时候,我就对这款游戏的介绍产生了兴趣。SE居然标榜了自己游戏的玩法,整出来一个“RTTB”,这种游戏类型倒还是闻所未闻,所谓的“深奥且即富策略性的即时战斗系统”多少勾起我对这款游戏的一些想象。...
提高记忆力的游戏记数字的游戏,国内数藏玩法传奇类手游即将上线 世纪华通数河平台定档首发

提高记忆力的游戏记数字的游戏,国内数藏玩法传奇类手游即将上线 世纪华通数河平台定档首发

作者: 极简大道 时间:2022-12-05 阅读: 157
中新网11月17日电 近日,国内首款拥有数藏玩法的传奇类手游——《传奇-烈焰裁决》即将上线,世纪华通旗下“数河平台”将成为该产品的首批合作伙伴,参与数字藏品“传奇令”的首发,实现从游戏到数字藏品的全链路打通,助推国内游戏数字藏品的玩法升级和游戏品牌的场景延展。...
认识数字的小游戏,账号太多密码难记 管理工具应运而生 记录密码“神器”能否解决记忆困境

认识数字的小游戏,账号太多密码难记 管理工具应运而生 记录密码“神器”能否解决记忆困境

作者: 极简大道 时间:2022-12-05 阅读: 193
□楚天都市报极目新闻记者 肖名远 刘楒睿你究竟有多少个密码?社交平台密码,视频软件密码,电脑开机密码,OA系统等工作设备密码,银行卡、支付宝等金融账户密码……活在数字时代的我们,拥有很多密码,以保障各类账户的安全。但同时,也会出现忘记密码的尴尬情况。...

年度爆文