社区
模式及实现
帖子详情
连连看 地图生成原理
lemonice
2007-01-29 10:56:24
小弟我初社入语言编程里来,想做个连连看的游戏供大家娱乐下,只是苦思凝想也没有想到地图是用什么来生成的,是怎么生成的,如果我想做几个地图,没关的地图生成后的样式都要有点变化,那该怎么做呢?谁来帮帮我,还有方块元素是怎么成双配对的,让他们随即安放位置呢.救命啊各位大哥大姐们.小弟我提前给路人拜年了,祝路过的人新年快乐,祝帮我的路人出门拣金元宝!!
...全文
1956
19
打赏
收藏
连连看 地图生成原理
小弟我初社入语言编程里来,想做个连连看的游戏供大家娱乐下,只是苦思凝想也没有想到地图是用什么来生成的,是怎么生成的,如果我想做几个地图,没关的地图生成后的样式都要有点变化,那该怎么做呢?谁来帮帮我,还有方块元素是怎么成双配对的,让他们随即安放位置呢.救命啊各位大哥大姐们.小弟我提前给路人拜年了,祝路过的人新年快乐,祝帮我的路人出门拣金元宝!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
UltraBejing
2008-05-01
打赏
举报
回复
有问题请先GOOGLE,BAIDU
terry2008
2007-03-27
打赏
举报
回复
LZ的问题太多了,没有一点是自已想的,这可怎么教啊. 动动脑筋,其实很容易就实现的.
terry2008
2007-03-27
打赏
举报
回复
哈哈,那是我两年前写的游戏哦,花了我半年的时间,能想到的问题都解决了.看来我也得做了Blog了,以后也好跟大家分享分享.
FingerStyle
2007-02-01
打赏
举报
回复
在csdn里找 连连看 下载下来 我已经传上了, 有原代码... 有很多问题.. 指正....
lemonice
2007-02-01
打赏
举报
回复
没有人理俺啊
lemonice
2007-01-31
打赏
举报
回复
谁能帮忙说的明白一点,我现在还是蛮糊涂的,我很想了解下xiaocai0001说的游戏地图生成算法, 写死的毕竟少了很多趣味性.我的想法是随机生成部分地图,如果是那样的话,我想试试,地图没必要全是方块什么的
lemonice
2007-01-31
打赏
举报
回复
怎么分份啊,说明白点,谁能给俺点这个地图的策划方案,寻路上的方案也要,谢谢啦!!!
dream_y06
2007-01-31
打赏
举报
回复
分份,然后随机,感觉可行呀~
珍惜生命远离CPP
2007-01-30
打赏
举报
回复
我的是用随机数字,比如1-40生成4份,随机放到棋盘中。
FingerStyle
2007-01-30
打赏
举报
回复
当时由于时间关系, 从开始到最后用了3天时间, 也没想那么多..
楼上把信箱给我 我给你Send一份, 多多指教....
xiaocai0001
2007-01-30
打赏
举报
回复
呵呵, 从简单做起..
实际上这个游戏难点在于,
第一: 连接算法, 玩家选择了两个, 如何确定是否符合规则连接?
第二: 游戏地图生成算法, 写死的毕竟少了很多趣味性.
开始做起, 可以回避第二个问题, 从整体上把游戏实现, 后面慢慢修改.
FingerStyle
2007-01-30
打赏
举报
回复
恩 当时考虑的时候只是想怎么实现一下, 后面没想的太深
我这个连连看 只是弄了选择: 简单 中等 困难
简单: 0 ~ 2
1 0 2 1 0 1 1
2 1 0 0 1 2 0
1 0 2 1 0 1 1
2 1 0 0 1 2 0 打乱..
中等: 0 ~ 5
0 2 3 4 5 0 1
0 1 4 3 1 2 0
0 2 3 4 5 0 1
0 1 4 3 1 2 0 打乱....
原理差不多就这样, 当时做的时候也就想了这么多, 楼上说的是, 有待改进...
xiaocai0001
2007-01-30
打赏
举报
回复
这个做的, 算是预定义好的各个关卡?
那玩的次数稍多一下, 就会发现老重复了...
再说, 这个随机显示图片, 那就有可能随机到同一个图片上, 很多方面还是需要进一步考虑的.
FingerStyle
2007-01-30
打赏
举报
回复
//上半部分
for(int i=1; i<6; i++)
for (int j = 1; j < 16; j++)
{ //产生随机显示的图片
string name = string .Format ("image/{0}.bmp",(int)(r.NextDouble ()*hard)+1);//这里可以控制游戏的难度
map[i, j] = new MapNode(name, normalState, normalState);
}
///我的部分代码. 图片从 0.bmp ~ 40.bmp
(int)(r.NextDouble ()*hard)+1 这里的hard控制难度
hard 如果是20 , 那地图的图片只有 1 ~ 20.bmp随机
hard 如果是40, 那地图的图片从 1 ~ 40.bmp随机 这样难度就增大了....
楼上的看看对不?
xiaocai0001
2007-01-30
打赏
举报
回复
上半部分和下半部分一样了 这样保证了都是偶数个 ,
然后
for循环 打乱一下 , 详细 见我的博客.....
-----------------------------
这样地图生成的问题解决了, 但每关的难度控制上就有问题了吧?
gaooo
2007-01-29
打赏
举报
回复
哈哈,太谦虚了。
学习了!
FingerStyle
2007-01-29
打赏
举报
回复
呵呵 一点拙见...
gaooo
2007-01-29
打赏
举报
回复
好主意啊!楼上的
FingerStyle
2007-01-29
打赏
举报
回复
我的博客里有篇文章 c# 连连看实现地图的原理 (http:\\jiangzhiliang002.blog.tom.com)
先生成上半部分
! # $ % %
* & * * !
然后Clone到下半部分
! # $ % %
* & * * !
就这样了:
! # $ % %
* & * * !
! # $ % %
* & * * !
上半部分和下半部分一样了 这样保证了都是偶数个 ,
然后
for循环 打乱一下 , 详细 见我的博客.....
连连看
地图
编辑器(JAVA版)源代码 最优化版
完整的项目工程 包括读取部分的使用说明 可
生成
连连看
的
地图
布局文件 使布局
地图
多样化
连连看
地图
编辑器(JAVA版)源代码 最优化版
C++
连连看
源代码
基于VC++6.0的面向对象程序设计的
连连看
易语言源码
连连看
核心算法.7z
易语言源码
连连看
核心算法.7z
原生JavaScript实现
连连看
游戏(附源码).doc
原生JavaScript实现
连连看
游戏(附源码)
VC++经典小游戏源代码(扫雷、
连连看
、拼图、推箱子、贪吃蛇、俄罗斯方块)
用vc++MFC编的一些小游戏, 有:扫雷、
连连看
、拼图、推箱子、贪吃蛇、俄罗斯方块等。
模式及实现
5,530
社区成员
4,167
社区内容
发帖
与我相关
我的任务
模式及实现
C/C++ 模式及实现
复制链接
扫一扫
分享
社区描述
C/C++ 模式及实现
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章