微信好玩的代码游戏(如何用130行代码)

首页教程更新时间:2023-05-26 13:45:05

近日,一款名为“羊了个羊”微信小游戏火爆全网。

微信好玩的代码游戏,如何用130行代码(1)

凭借简单玩法和不走寻常路的关卡设置,三消小游戏《羊了个羊》,成为《合成大西瓜》《召唤神龙》后的小微游戏新王者。

“其实游戏很简单,就是凑齐三个一样的图案就能点击消除,凑不齐三个的图案先放在底部的七个待选栏位里,如果七个槽位都占满了,游戏就失败了。”游戏第一关其实是玩法教程,但当玩家来到第二关时,难度直线上升。根据官方介绍,“羊了个羊”是一款超难的闯关消除小游戏,通关率不到0.1%。

当然,我们这次可不是为了针对“羊了个羊”的玩法开发出游戏辅助这类的东西,而是说,我们作为学编程的程序员,能不能自己用自己所学知识来开发一个《羊了个羊(仿制版)》呢?那么话不多说,我反正已经试出来了,今天就是来秀秀源码的!(如果有大佬勿怪)

微信好玩的代码游戏,如何用130行代码(2)

首先我准备了一些东西:

编译器 需要的插件:VS2022/2019,easyX图形库插件(建议安装最新的版本)注:VScode的朋友需要另外配置好环境。

需要准备的图片素材:

微信好玩的代码游戏,如何用130行代码(3)

如果有需要可以在文章最后找到获取方式!

接下来就来看看我们的源码:

#include<easyx.h> #include<stdio.h> const int WIDTH = 400; const int HEIGHT = 760; const int INTERVAL = 48; IMAGE img_bk; IMAGE img_item[3]; void loadImg() { loadimage(&img_bk, "images/bk.jpg", WIDTH, HEIGHT); loadimage(img_item 0, "images/cao.png",48,48); loadimage(img_item 1, "images/lingdang.png", 48, 48); loadimage(img_item 2, "images/shu.png", 48, 48); } int main() { initgraph(WIDTH, HEIGHT,EW_SHOWCONSOLE); loadImg(); int map[3][3] = {0}; //初始化地图 for (int r = 0; r < 3; r ) { for (int c = 0; c < 3; c ) { map[r][c] = r 1; //1 2 3 } } //打乱数组 for (int r = 0; r < 3; r ) { for (int c = 0; c < 3; c ) { int r1 = rand() % 3; int c1 = rand() % 3; int t = map[r1][c1]; map[r1][c1] = map[r][c]; map[r][c] = t; } } int store[7] = { 0 }; int offsetX = (WIDTH - (2 * (48 INTERVAL) 48)) / 2; int offsetY = (HEIGHT - (2 * (48 INTERVAL) 48)) / 2; while (true) { BeginBatchDraw(); //绘制地图 putimage(0, 0, &img_bk); //输出图片 for (int r = 0; r < 3; r ) { for (int c = 0; c < 3; c ) { if(map[r][c]) putimage(offsetX c * (48 INTERVAL), offsetY r * (48 INTERVAL), img_item (map[r][c]-1)); } } //绘制下面 for (int i = 0; i < 7; i ) { if (store[i]) putimage((i * 50) 26, 620, img_item (store[i]-1)); } EndBatchDraw(); ExMessage msg = { 0 }; if (peekmessage(&msg) && msg.message == WM_LBUTTONDOWN) { //鼠标坐标判断 for (int r = 0; r < 3; r ) { for (int c = 0; c < 3; c ) { int x = offsetX c * (48 INTERVAL); int y = offsetY r * (48 INTERVAL); //printf("pos(%d,%d)\n", x, y); //判断鼠标是否点击了图片 if (msg.x > x && msg.x < x 48 && msg.y>y && msg.y < y 48) { //求出点击的图片对应的数组下标 int col = (msg.x - offsetX) / (48 INTERVAL); int row = (msg.y - offsetY) / (48 INTERVAL); //printf("row:%d col:%d\n", row, col); //把点击的图片添加到下面 for (int i = 0; i < 7; i ) { if (store[i] == 0) { store[i] = map[row][col]; break; } } //如果下面有三个一样的就消除 int cnt = 0; for (int i = 0; i < 7; i ) { if (store[i] == map[row][col]) { cnt ; } } if (cnt == 3) { for (int i = 0; i < 7; i ) { if (store[i] == map[row][col]) { store[i] = 0; } } } //把点击的图片从map中删除 map[row][col] = 0; } } } } } while (1); return 0; }

我可没有私藏哦,想要试试的小伙伴赶紧去拿着源码编译吧!如果遇到问题可以从下面来找我哦~

对啦对啦!另外的话为了帮助大家,轻松,高效学习C语言/C ,我给大家分享我收集的资源,从最零基础开始的,帮助大家在学习C语言的道路上披荆斩棘!可以来我粉丝群领取哦~

编程学习书籍分享:

微信好玩的代码游戏,如何用130行代码(4)

编程学习视频分享:

微信好玩的代码游戏,如何用130行代码(5)

整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)最重要的是你可以在群里面交流提问编程问题哦!

对于C/C 感兴趣可以关注小编在后台私信我:【编程交流】一起来学习哦!可以领取一些C/C 的项目学习视频资料哦!已经设置好了关键词自动回复,自动领取就好了!

,
图文教程
相关文章
热门专题
推荐软件
奇热小说
奇热小说
下载
QQ2019手机版
QQ2019手机版
下载
王者荣耀
王者荣耀
下载
百度浏览器迷你版
百度浏览器迷你版
下载
2345浏览器手机版
2345浏览器手机版
下载
网易邮箱
网易邮箱
下载
爱奇艺
爱奇艺
下载
网易云音乐
网易云音乐
下载
WPSOffice
WPSOffice
下载
优酷
优酷
下载
谷歌浏览器(Chrome)
谷歌浏览器(Chrome)
下载
迅雷看看播放器
迅雷看看播放器
下载
UC浏览器
UC浏览器
下载
QQ音乐
QQ音乐
下载
阿里旺旺买家版v9.12.10C官方版
阿里旺旺买家版v9.12.10C官方版
下载
360安全卫士v12.1官方版
360安全卫士v12.1官方版
下载
猜你喜欢
古诗词启蒙
古诗词启蒙
下载
教师资格证随身学
教师资格证随身学
下载
可易ERP5000v15.1官方版
可易ERP5000v15.1官方版
下载
七果游戏
七果游戏
下载
汉仪粗宋简
汉仪粗宋简
下载
逃离教室
逃离教室
下载
孤岛物语1.01春节特别版
孤岛物语1.01春节特别版
下载
乐惠淘app
乐惠淘app
下载
taktop
taktop
下载
战地前线之城
战地前线之城
下载
湖北包装网
湖北包装网
下载
XBOX360孤岛惊魂4金手指
XBOX360孤岛惊魂4金手指
下载
3Q盛世
3Q盛世
下载
天眼看世界
天眼看世界
下载
高考日历2017
高考日历2017
下载
文件夹比较同步工具FreeFileSync1.19免费
文件夹比较同步工具FreeFileSync1.19免费
下载