我做的连连看仙剑音乐版(支持局域网双人一起玩)
可到下面地址下载(7.39M,包括可执行文件和必要的OCX控件):(存放在纳米盘网站)下载地址:http://www.namipan.com/d/c89ce01 ... 71971fbffd5df407600
首先看看界面:
http://static2.photo.sina.com.cn/bmiddle/531cfde4g68ad20580d41
感觉还不错吧?(^_^)游戏总共设置了10关。1,2两关没有移动,从第3关开始图片有移动。
如果是联网模式(2个人玩),“开始游戏”就会从第3关开始。
在来感受一下人性化设计:
1、可以“暂停游戏”,“保存游戏”,保存的游戏下次可以“载入游戏”继续玩。
http://static5.photo.sina.com.cn/middle/531cfde4g68ad7a565bd4&690
2、设置:
(1)音乐:游戏带了4首仙剑的歌曲,《六月的雪》(真人版)《桃花幻梦》《有你的天堂》(真人版)《蝶恋》。均为MP3格式,音质不错。当然,如果你听厌了,可以使用“静音”或“停止背景音乐”关闭音乐。
http://static16.photo.sina.com.cn/middle/531cfde4g68ad7ab293df&690
(2)背景颜色和背景图片可以任意调整。
(3)游戏难度可以自己把控。游戏中时间走的快慢和过关增加的提示数可以在一定范围内调整。你可以选择最适合自己的速度玩游戏。
http://static8.photo.sina.com.cn/middle/531cfde4g68ad7a93d977&690
3、过关或者GAME OVER后,会让你留下“尊姓大名”,参加得分排行榜。
4、独特新颖的局域网互联模式,可以在局域网中实现共同游戏。实现方法是在“帮助”中点“联网”,会出来对话框,显示你自己的局域网IP地址。并要求你输入和你一起玩的“友军”IP地址,让你的“友军”也打开游戏,选择“联网”,这样他就能看到自己的IP,互相输入对方的IP。然后在询问“是否做主机”时一方选择“是”,另一方选择“否”,这样就可以实现联网。(注意有防火墙的朋友,可能要关闭防火墙)
http://static7.photo.sina.com.cn/middle/531cfde4g68ad7a847816&690
http://static9.photo.sina.com.cn/middle/531cfde4g68ad94d08d08&690
[ 本帖最后由 超然 于 2009-4-30 01:25 编辑 ] 睡觉去了,明天再写连连看判断2个相同的图片能否连上(消除)的思路。
连连看判断两张图片可连的思路
一、连连简介:两张图片之间存在一条通路,这条通路最多拐两个弯。
如下图所示,A,B两点之间的一条有两个拐点的通路。
http://static4.photo.sina.com.cn/middle/531cfde4g68b69143c8f3&690
二、下面开始来分析,如何判断连个点位可以通过小于等于2个的拐点来联通。
1、相邻,可连通。
2、不相邻:如下图的A,B两张图片,A周围连续空缺处(无图片、通路)的标记为**,用集合Ca来表示,B周围连续空缺处标记为蓝色,用集合Cb来表示。黄蓝相交处标记为红色。记为C点。
http://static4.photo.sina.com.cn/middle/531cfde4g68b691626fd3&690
(1)如果这样的C点存在(可能会有很多个),则问题解决,在A,B之间存在这样一条通路A-C-B,且最多只有1个拐弯点(有可能A,C,B共线,没有拐弯)。
(2)如果不存在这样的C点,也就是说集合Ca和集合Cb没有交集,显示的图片如下:
http://static9.photo.sina.com.cn/middle/531cfde4g68b69171cf78&690
需要进一步的分析。
如果这时候,A,B之间还存在符合条件(拐点小于等于2个)的通路,则这条通路一定是有2个拐点的。这里可以用反证法来说明:
如果这条通路没有拐点或者只有1个拐点,那么这个拐点就是我们上面分析的C点。则与前面的前提条件:“不存在C点,集合Ca和集合Cb没有交集”相矛盾。
如果A,B之间的通路有两个拐点,则必然是以下几种情况:
http://static11.photo.sina.com.cn/middle/531cfde4g68b6919072fa&690
其实,这几种情况是一样的,可以统一描述如下:
两个拐点,其中和A共线(水平或垂直)的记为Pa(Pa必属于集合Ca),和B共线的记为Pb(Pb必属于集合Cb)。
且Pa不可能属于集合Cb,Pb不可能属于集合Ca,否则Pa、Pb就变成前面提到的C点了。
另外,Pa如果和A垂直方向共线,则Pb也和B垂直方向共线,且Pa和Pb一定是水平方向共线。
反之,Pa如果和A水平方向共线,则Pb也和B水平方向共线,且Pa和Pb一定是垂直方向共线。
注意红色字体部分:这里说明了根据A,B,Pa的位置可以确定Pb的位置。
如下图:
http://static12.photo.sina.com.cn/middle/531cfde4g68b6919ffadb&690
三、有了以上分析后,我们的程序就好判断啦。下面说明一下程序思路。
假设给定的两个点位(两张图片的位置)记为A和B。
如果A,B相邻则A,B必然可以连通。判断结束。
如果A,B不相邻则分别对A,B的4个方向(上下左右)进行循环,得到A、B周围连续为空缺的区域,记为数组A和B。
循环A,看A中是否有点位也在B中,如果有这个点位就是我们上面分析的C点,判断A,B可连通,判断结束。
如果A中没有一个点位同时也在B中,则只剩下一种情况,就是上面分析的两个拐点的情况。 此时,循环A,A就是上图中的点位Pa,根据A,B和Pa可以确定Pb的位置。Pb的位置确定后,只需要检查两点:
1.Pb是否在数组B中;
2.Pb和Pa之间是否相通。
满足这两个条件,则A,B之间可以连通,否则A,B之间不能连通。判断结束。
[ 本帖最后由 超然 于 2009-4-30 03:34 编辑 ] 怎么看不了图片 下来试用一下,,好东西呀
页:
[1]