当前位置: 首页 > news >正文

嵌入式——C语言:俄罗斯方块

这次工程实现我们分三个文件

1.h文件:将宏和需要声明的函数放入,然后再在main.c和写俄罗斯方块功能.c文件中调用

2.写俄罗斯功能的.c文件

3.main.c文件

一、构建游戏区域

        1.初步计划构成的区域,左边大的3/4区域为游戏进行的区域,右上角区域为下一个即将出现的图形,坐下角为得分区域和基本操作步骤简介。

        

2.用符号‘*’来代替这些这些线条(这里我们定义一个二维数组来输入这些符号)

3.用颜色填充即背景色和前景色一直即可完成线条的绘制,然后在将我们需要的文字打入到右下角区域中。

二、构建方块

        构建方块前先了解总共有多少种方块,这里我们有18种。因为方块可能会在后期游戏中变形,所以我们对每个图像进行编号,后期变形时让他编号进行变化即可。

三、方块的移动

        1.游戏中我们需要左移右移,但是如果侧边有堆积的图形那么则不能移动,而且前提是在方框内。

        

        2.如果满足移动条件则我们移动方块

        3.移动完后我们还需要将移动前的图形进行清除

四、对方块的操作

        通过从键盘输入一些字符来控制图形的切换(w)、左移(a)、右移(d)、暂停游戏(p)和向下加速(s),用srand(time(NULL))然后对19取余这样就会随机拿到我们的编号;从而实现随机图形进入游戏中。

五、消行

        在我们消行之前也肯定是要有一个判断条件,如果满足一行没有空格(这里我们可以定义一个变量为1如果遇见空格将他赋值为0,然后再传入是否执行清行的if条件中即可)那我们就将其以及以下的行全部消掉,即整体向下平移一格,然后给第一行赋值为‘ ’。在执行清行时我们可以加一个计数器来计分。

六、游戏判定结束

http://www.dtcms.com/a/310368.html

相关文章:

  • C#常见的转义字符
  • 国产开源大模型崛起:使用Kimi K2/Qwen2/GLM-4.5搭建编程助手
  • 浏览器渲染过程
  • VSCode Python 与 C++ 联合调试配置指南
  • web前端第一次作业
  • TwinCAT3编程入门2
  • 如何快速给PDF加书签--保姆级教程
  • TCP协议的特点和首部格式
  • 电力系统与变压器实验知识全总结 | 有功无功、同步发电机、短路空载实验、电压调整率、效率条件全讲透!
  • curl命令使用
  • 蒙特卡罗方法(Monte Carlo Method)_学习笔记
  • 【面板数据】全国31省名义、实际GDP及GDP平减指数数据(2000-2024年)
  • VR拍摄的流程与商业应用,实用的VR拍摄技巧
  • 汇川ITS7100E触摸屏交互界面开发(二)界面开发软件使用记录
  • python试卷01
  • Cesium性能优化
  • 代码随想录刷题Day22
  • 如何利用API接口与网页爬虫协同进行电商平台商品数据采集?
  • Java应用服务器选型指南:WebLogic vs. Tomcat、WebSphere、JBoss/Wildfly
  • 今日行情明日机会——20250801
  • Linux系统磁盘未分配的空间释放并分配给 / 根目录的详细操作【openEuler系统】
  • 电脑的时间同步电池坏掉了,每次开机都要调整时间
  • 【RocketMQ】鉴权机制
  • 网络协议之路由是怎么回事?
  • 电商项目_性能优化_数据同步
  • 18.若依框架中的xss过滤器
  • Java 24 新特性解析与代码示例
  • 牛客——取数游戏2
  • UE5 动态扫描波
  • 【C#学习Day15笔记】拆箱装箱、 Equals与== 、文件读取IO