标题:连连看最终版(三种难度,上移下移等8关)
只看楼主
eastsnake
Rank: 1
等 级:新手上路
帖 子:127
专家分:0
注 册:2005-3-8
 问题点数:0 回复次数:18 
连连看最终版(三种难度,上移下移等8关)
连连看最终版(三种难度,上移下移等8关)
请斑竹将前序版本删除。
有谁会网络编程,给个提示怎么写联机的连连看
CSdXzvGz.rar (67.74 KB) 连连看最终版(三种难度,上移下移等8关)

搜索更多相关主题的帖子: 连连看 难度 下移 上移 
2005-04-07 14:28
eastsnake
Rank: 1
等 级:新手上路
帖 子:127
专家分:0
注 册:2005-3-8
得分:0 
自己的帖子自己顶,主体判断
两个图相联的函数附后,欢迎在此基础上修改传播

程序员是男孩,语言是女孩; 每个男孩都希望能交往更多的女孩; 但是却没有一个男孩真正了解一个女孩; 男孩总是不能专心一个女孩,而女孩却总是在变~
2005-04-07 14:29
eastsnake
Rank: 1
等 级:新手上路
帖 子:127
专家分:0
注 册:2005-3-8
得分:0 

//判断两副图是否能连接 //px,py为第一副图坐标 px2,py2为第二副图坐标 //pickey[i,j]为存储图片值数组,值为-1时表示没有图片,如下 // -1-1-1-1-1-1 -1 // -1 0 1 2 3 4 -1 // -1 5 6 7 8 9 -1 // -1 0 1 2 3 4 -1 // -1-1-1-1-1-1 -1

//key[i,j]为存储图片所能连线数组,初始为0,为2时表示两副图有交叉 //如下图pickey数组,两个0可以消,两副图上下左右所能到达的空图(即pickey[i,j]==-1)key值加1,则key数组如右 // -1 -1-1-1-1-1 -1 0100000 // -1 0 1 2 3 4 -1 1000000 // -1 -1 6 7 8 9 -1 0100000 // -1 -1 0 2 3 5 -1 1200000 // -1 -1-1-1-1-1 -1 0110000 //有一个key值为2,所以可以连

private bool canline(int px,int py,int px2,int py2) { int i,j; int []row=new int[12];//存储每行的key值 int []col=new int[22];//存储每列的key值 bool flag=false; if(px2==px&&py2==py) return false;//两副图为同一张图,不能消 if(pickey[px,py]!=pickey[px2,py2]) return false;//两副图不一样,不能消 if(pickey[px,py]==-1||pickey[px2,py2]==-1) return false;//有一张图为空图,不能消 if((px2==px&&py2==py-1)||(px2==px&&py2==py+1)||(py2==py&&px2==px+1)||(py2==py&&px2==px-1)) return true;//两张图相临,能消 //有一张图四周被其他图片包围,不能消 if((pickey[px-1,py]>=0&&pickey[px+1,py]>=0&&pickey[px,py-1]>=0&&pickey[px,py+1]>=0)||(pickey[px2-1,py2]>=0&&pickey[px2+1,py2]>=0&&pickey[px2,py2-1]>=0&&pickey[px2,py2+1]>=0)) return false; //key数组初始为0 for(i=0;i<x+1;i++) for(j=0;j<y+1;j++) { key[i,j]=0; } //(px,py)点对应图左边为空,则key值+1 for(i=px-1;i>=0;i--) { if(pickey[i,py]>=0) break; key[i,py]++;

} //(px,py)点对应图右边为空,则key值+1 for(i=px+1;i<=x;i++) { if(pickey[i,py]>=0) break; key[i,py]++;

} //(px,py)点对应图上边为空,则key值+1 for(j=py-1;j>=0;j--) { if(pickey[px,j]>=0) break; key[px,j]++; } //(px,py)点对应图下边为空,则key值+1 for(j=py+1;j<=y;j++) { if(pickey[px,j]>=0) break; key[px,j]++; } //(px2,py2)点对应图左边为空,则key值+1 for(i=px2-1;i>=0;i--) { if(pickey[i,py2]>=0) break; key[i,py2]++;

} //(px2,py2)点对应图右边为空,则key值+1 for(i=px2+1;i<=x;i++) { if(pickey[i,py2]>=0) break; key[i,py2]++;

} //(px2,py2)点对应图上边为空,则key值+1 for(j=py2-1;j>=0;j--) { if(pickey[px2,j]>=0) break; key[px2,j]++; } //(px2,py2)点对应图下边为空,则key值+1 for(j=py2+1;j<=y;j++) { if(pickey[px2,j]>=0) break; key[px2,j]++; } for(i=0;i<=x;i++) for(j=0;j<=y;j++) { if(key[i,j]==2) return true;//key值为2,表示有交叉,可以消 col[i]+=key[i,j];//累计每一列的总值 row[j]+=key[i,j];//累计每一行的总值 } //列值>=2,且此列两图中间无其他图,可以消 for(i=0;i<=x;i++) if(col[i]>=2) { flag=true; if(py2>py) { for(j=py;j<=py2;j++) if(pickey[i,j]>=0) {flag=false;break;} } else for(j=py;j>=py2;j--) if(pickey[i,j]>=0) {flag=false;break;} if(flag) return true; } //行值>=2,且此列两图中间无其他图,可以消 for(j=0;j<=y;j++) if(row[j]>=2) { flag=true; if(px2>px) { for(i=px;i<=px2;i++) if(pickey[i,j]>=0) {flag=false;break;} } else for(i=px;i>=px2;i--) if(pickey[i,j]>=0) {flag=false;break;} if(flag) return true; } return flag; }


程序员是男孩,语言是女孩; 每个男孩都希望能交往更多的女孩; 但是却没有一个男孩真正了解一个女孩; 男孩总是不能专心一个女孩,而女孩却总是在变~
2005-04-07 14:30
幻风幻云
Rank: 1
等 级:新手上路
帖 子:762
专家分:0
注 册:2005-1-14
得分:0 
干的好

2005-04-07 14:47
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
得分:0 
我顶一下!
2005-04-08 20:27
loveys
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-4-8
得分:0 
看看哈
2005-04-08 22:15
loveys
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-4-8
得分:0 
呵呵,不错啊,我还玩了一下
2005-04-08 22:19
kaka0368
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2005-4-23
得分:0 
楼主好强!厉害,佩服!

我是初学者。请多多照顾!
2005-04-25 10:07
唐伯猫
Rank: 8Rank: 8
等 级:贵宾
威 望:45
帖 子:5323
专家分:58
注 册:2005-8-9
得分:0 
能写这样到这样的地步,实在是让人佩服!

<iframe name="alimamaifrm" frameborder="0" marginheight="0" marginwidth="0" border="0" scrolling="no" width="300" height="170" src="/go/app/tbk_app/chongzhi_300_170.php?pid=mm_28854300_2441872_11377541&page=chongzhi_300_170.php&size_w=300&size_h=170&stru_phone=1&stru_game=1&stru_travel=1" ></iframe>
2005-08-09 17:55
host1982
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2005-8-7
得分:0 
我啥都不想说,就直说一个字“凶”

共同切磋,一起进步 电子邮件:host1982@ QQ:156018083
2005-08-10 19:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-14992-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.374359 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved