C语言实战 | “贪吃蛇”游戏重构-LMLPHP

程序设计的过程中,面对复杂项目,利用模块化思维分解任务,是关键的一步。读者一定要掌握模块化思维设计思维,为将来团队合作、协同完成大型应用软件做好准备。

01、“贪吃蛇”游戏

有了游戏框架之后,按照游戏框架完成“贪吃蛇”游戏。

“贪吃蛇”游戏角色有两个:“贪吃蛇”和“蛋”。也就是每幅图像都需要包含这两个角色。完成游戏的第一步,找到合适的数据结构存储游戏角色,显示在屏幕上。“贪吃蛇”的信息由一个较大的数组保存。

选择好合适的数据结构,则可以完成游戏元素的显示。

保存“蛋”位置的变量为:


int foodRow,foodCol;

 保存“贪吃蛇”的数据变量为:


int snakeRows[100],snakeCols[100];

 完成了最重要的第一步,接下来就按照框架流程来进行,每一个角色都包含着相同流程:初始化数据→显示数据→更新数据,如图6.6所示。

C语言实战 | “贪吃蛇”游戏重构-LMLPHP

■ 图6.6“贪吃蛇”游戏框架图

(1) 初始化数据。

“食物”的位置是随机的,代码如下:

C语言实战 | “贪吃蛇”游戏重构-LMLPHP

C语言实战 | “贪吃蛇”游戏重构-LMLPHP

(2)  显示数据。

初始化数据之后,根据数据显示“蛋”和“贪吃蛇”的代码如下:

C语言实战 | “贪吃蛇”游戏重构-LMLPHP

(3)  更新数据。

完成了“初始化数据”和“显示数据”两部分,剩下就是“更新数据”部分。数据会发生变化的情况包括如下两种情况。

第一种:“贪吃蛇”的运动导致“贪吃蛇”位置信息发生变化;

第二种:“贪吃蛇”吃到“食物”时,“贪吃蛇”的长度会发生变化,会产生新的“食物”,“食物”的位置信息

06-29 17:22