javascript 连连看代码出炉
0 && TmpInt0 && TmpInt0 && TmpInt0 && TmpInt";
for(j=0; j";
for(i=0; i";
}
else{
TmpInt--;
Matrix[i][j] = 1 + Math.floor( PicMax * Math.random() );
if(TmpInt";
//添图片(webdings图标)
TmpStr += String.fromCharCode(Matrix[i][j] + OffSet);//different pics
}
TmpStr += "
";
}
TmpStr += "
";
}
TmpStr += "
";
TmpInt = (RowMax-2) * (ColMax-2) / 2;//剩余数量,判断结束用。
//TmpStr += ""//背景音乐
document.getElementById("container").innerHTML = TmpStr;//输出表格
document.getElementById("timeleft").innerHTML = TmpTime;//显示剩余时间
document.getElementById("timebar").style.width = 600;//时间条
document.getElementById("timebar").style.backgroundColor = "green";
st = setInterval("ShowTime()",1000);//开始倒计时
}
//X方向连线。(有起点,无终点)
function LineX(x, y, xt){
for( i=x; i!=xt; (xP2.y){
P3=P1;
P1=P2;
P2=P3;
}
//P1下方1点(y+1)先纵向再横向是否可连接。(因为起点P1不为空,所以检测其下方一点)
if( LineY(P1.x, (P1.y+1), P2.y) && LineX(P1.x, P2.y, P2.x) ) return true;
//P1先向左侧连接,再检测该点再纵向再横向是否可连接P2。
for(j=(P1.x-1); j>=0; j--){
if(Matrix[j][P1.y]) break;
if( LineY(j, (P1.y+1), P2.y) && LineX(j, P2.y, P2.x) ) return true;
}
//P1先向右侧连接,再检测该点再纵向再横向是否可连接P2。
for(j=(P1.x+1); jP2.x){
P3=P1;
P1=P2;
P2=P3;
}
if( LineX((P1.x+1), P1.y, P2.x) && LineY(P2.x, P1.y, P2.y) ) return true;
for(j=(P1.y-1); j>=0; j--){
if(Matrix[P1.x][j]) break;
if( LineX((P1.x+1), j, P2.x) && LineY(P2.x, j, P2.y) ) return true;
}
for(j=(P1.y+1); j4 ){
document.getElementById("timebar").style.backgroundColor = "red";
}
else if( (TimeMax/TmpTime)>2 ){
document.getElementById("timebar").style.backgroundColor = "yellow";
}
if(!TmpTime){//剩余时间为0
clearInterval(st);//清除倒计时
document.getElementById("container").innerHTML = "";//清屏
document.getElementById("timeleft").innerHTML = "";
document.getElementById("timebar").style.backgroundColor = "white";
alert("时间到!");
}
}
//-->
行数
列数
图片数
时间秒
重置
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]