当前位置:网站首页>基于QT实现简单的连连看小游戏
基于QT实现简单的连连看小游戏
2022-06-26 20:33:00 【biyezuopinvip】
资源下载地址:https://download.csdn.net/download/sheziqiong/85788216
资源下载地址:https://download.csdn.net/download/sheziqiong/85788216
简单的连连看小游戏。
整体流程
实现思路:
定义游戏模型类和游戏窗口类,使用按钮来完成游戏界面设置
算法
主要在图标的存放与打乱和连接的判断

图标的存放与打乱:采用一维数组,两个两个的为数组赋值,即为一对图标,为数组赋值 1~图标数 ICON,数组中的数值即对应相应编号的图片。之后生成随机数,两两交换数组元素的值,实现打乱
连接判断:连接分为三种大情况:直线连接、拐弯一次后连接、拐弯两次后连接,具体如下:
① 直接连接:

Case 1:判断连线上的数组元素值均为 0。

Case 2:判断连线上的数组元素值均为 0。
②

拐弯一次后连接:
连接前交换点的顺序,使横坐标小的点在前。
Case 3: 连线先向右再上拐或下拐,判断拐点为 0,再判断拐点可与起始点、终点直线相连。

Case 4: 连线先上或下再向右拐,判断拐点为 0,再判断拐点可与起始点、终点直线相连。

③ 拐弯两次后连接:
同样连接前交换点的顺序,使横坐标小的点在前。
Case 5:先向上或向下到达某点,在拐一次弯连到终点(连线所经过的点最初都存放了图片)。


Case 6:先向左或向右到达某点,在拐一次弯连到终点(连线所经过的点最初都存放了图片)。
Case 7、8、9、10:连接时连线经过了未存放图标的区域

单元测试
通过应用程序输出,生成窗口,进行游戏
单元测试
测试结果
游戏可以正常运行,各按钮可正常使用
收获
第一次同时使用多个.cpp 文件实现互相调用
学到了游戏模型和窗体相分离的游戏设计理念
学习了 Qt 按钮类的许多功能
可正常使用
收获
第一次同时使用多个.cpp 文件实现互相调用
学到了游戏模型和窗体相分离的游戏设计理念
学习了 Qt 按钮类的许多功能
资源下载地址:https://download.csdn.net/download/sheziqiong/85788216
资源下载地址:https://download.csdn.net/download/sheziqiong/85788216
边栏推荐
- 【贝叶斯分类2】朴素贝叶斯分类器
- windows系統下怎麼安裝mysql8.0數據庫?(圖文教程)
- 【最详细】最新最全Redis面试大全(70道)
- The relationship between the development of cloud computing technology and chip processor
- 30. concatenate substrings of all words
- Unity - URP get camera stack
- SentinelResource注解詳解
- ImageView, glide load long picture (glide load picture)
- 0基础学c语言(1)
- 大家都能看得懂的源码(一)ahooks 整体架构篇
猜你喜欢

Tiktok practice ~ homepage video ~ pull-down refresh

leetcode刷题:字符串02( 反转字符串II)

Uni app uses canvas to draw QR code

Two methods of QT to realize timer
![[Bayesian classification 3] semi naive Bayesian classifier](/img/9c/070638c1a613be648466e4f2bc341e.png)
[Bayesian classification 3] semi naive Bayesian classifier

Detailed explanation of shutter textfield

Database SQL statement writing

Three basic backup methods of mongodb

抖音实战~分享模块~短视频下载(保存到相册)

Development of NFT for digital collection platform
随机推荐
C: Reverse linked list
MySQL - subquery usage
[Bayesian classification 2] naive Bayesian classifier
Solve com mysql. jdbc. exceptions. jdbc4.MySQLNonTransientConnectionException: Could not create connection
Review of watermelon book (VII): Bayesian classifier (manual push + code demo)
Unity - URP get camera stack
[most detailed] latest and complete redis interview (42 tracks)
郭明錤:苹果 AR / MR 头显是其有史以来设计最复杂的产品,将于 2023 年 1 月发布
Arduino uno + DS1302 uses 31 byte static RAM to store data and print through serial port
Is it safe to open a securities account? Is there any danger
C language simple login
[Bayesian classification 4] Bayesian network
Detailed explanation of stored procedures in MySQL
C primer plus学习笔记 —— 3、字符的IO(输入/输出)
Daily basic use of alicloud personal image warehouse
Dynamic planning 111
Button how to dynamically set drawablebottom (setcomposunddrawables is invalid)
Is it safe to open an account for CICC Wealth Online?
手机股票注册开户有没有什么风险?安全吗?
leetcode刷题:字符串04(颠倒字符串中的单词)