为什么游戏开发很难?程序员20分钟搞定C++连连看游戏,亲自带小白入门

VC++连连看游戏,由VC++ Win32模式开发。很高兴你能百忙之中看我做的游戏,我花了不少时间去熟悉和练习Windows的各种API, 游戏的每一行代码,都是我自己写的.希望你能仔细考量我的代码,更加希望能您你给予我一个学习的机会。

  游戏控制说明:[F1]键用于初始化游戏,音乐部分正在编写中。

游戏界面展示:

游戏思路很简单,用一个数组来存贮各个图片,arrGame[][],每次单击一个图片后,就去查找是否相连。

1.生成地图。开始初始化时,要生成一个地图,这个地图中每个元素的个数必须是偶数,这个功能是用GenerateMap()来执行的,这样可以保证每个元素都有偶数个,元素的放置是随机的。

2.查找路径。当用户单击一个元素时,就会执行FindPath(),这个函数用来查找两个元素是否连通。如果连通,那么返回true,并连接两个元素。

3.查找路径算法。开始想用dfs或bfs来实现,但是路径的拐角不能超过2,那么bfs,dfs可能就不好控制了,所以我选择了如下的方法:把两个点分别做xy轴的平行线,那么我们模拟另一个线来在平行线上移动。

4.图像处理。游戏初始化时,使用CreateCompatibleDC()来创建nBitmap个hdcMem,每个hdcMem是分别存放着不同图片的相关内存hd

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值