var Board = function(){//构造方法 this.spidbeg = -1; this.splist = []; this.boxlist = []; this.bbox_x = []; this.bbox_y = []; } if(typeof(Board.prototype.creat) == "undefined"){ Board.prototype.create = function(raw,col,spbeg){//创建方阵 this.spidbeg = spbeg; for(var i = 0;i < raw;i++){ var listTemp = []; for(var j=0;j0){ parr.push([i,j]); sarr.push(this.splist[i][j]); } } } this.clear(parr,sarr); }; } if(typeof(Board.prototype.getspava) == "undefined"){ Board.prototype.getspava = function(arr){//获取所有不为空的方格精灵号 for(var i = 0;i < RAW;i++){ for(var j=0;j-1){ arr.push(this.splist[i][j]); } } } }; } if(typeof(Board.prototype.allcolor) == "undefined"){ Board.prototype.allcolor = function(carr){//统计方阵中所有的颜色 for(var i = 0;i < RAW;i++){ for(var j=0;j-1){ if(carr.length==0){ carr.push(this.boxlist[i][j]); }else{ var bTemp=0; for(var k=0;k=4){ for(i=0;i<4;i++){ var b = carr[ifast_random(carr.length)]; slist.push(b); C_Fun.removeByValue(carr,b); } } var pos=[]; for(var i=0;i-1){ if(tarr[0]==-1){ if(this.boxlist[iTemp][i]>-1){ tarr[0] = this.boxlist[iTemp][i]; tarr[1] = 1; parr.push(this.splist[iTemp][i]); poarr.push([iTemp,i]); } }else{ if(this.boxlist[iTemp][i] == tarr[0]){//相同块 if(this.boxlist[iTemp][i]>-1){ tarr[1]++; parr.push(this.splist[iTemp][i]); poarr.push([iTemp,i]); } if(i==COL-1){ if(tarr[1]>=3){//个数大于等于3 for(var k=0;k=3){//个数大于等于3 for(var k=0;k-1){ tarr[0] = this.boxlist[i][cTemp]; tarr[1] = 1; parr.push(this.splist[i][cTemp]); poarr.push([i,cTemp]); } }else{ if(this.boxlist[i][cTemp] == tarr[0]){//相同块 if(this.boxlist[i][cTemp]>-1){ tarr[1]++; parr.push(this.splist[i][cTemp]); poarr.push([i,cTemp]); if(i==RAW-1){ if(tarr[1]>=3){//个数大于等于3 for(var k=0;k=3){//个数大于等于3 for(var k=0;k0){ return true;//有可消除方格 }else{ return false;//无可消除方格 } }; } if(typeof(Board.prototype.newgame) == "undefined"){ Board.prototype.newgame = function(){//新游戏 C_Block.newgame(); for(var i=0;i-1){ tarr[0] = this.boxlist[iTemp][i]; tarr[1] = 1; parr.push(this.splist[iTemp][i]); poarr.push([iTemp,i]); } }else{ if(this.boxlist[iTemp][i] == tarr[0]){//相同块 if(this.boxlist[iTemp][i]>-1){ tarr[1]++; parr.push(this.splist[iTemp][i]); poarr.push([iTemp,i]); } if(i==COL-1){ if(tarr[1]>=3){//个数大于等于3 for(var k=0;k=3){//个数大于等于3 for(var k=0;k-1){ tarr[0] = this.boxlist[i][cTemp]; tarr[1] = 1; parr.push(this.splist[i][cTemp]); poarr.push([i,cTemp]); } }else{ if(this.boxlist[i][cTemp] == tarr[0]){//相同块 if(this.boxlist[i][cTemp]>-1){ tarr[1]++; parr.push(this.splist[i][cTemp]); poarr.push([i,cTemp]); if(i==RAW-1){ if(tarr[1]>=3){//个数大于等于3 for(var k=0;k=3){//个数大于等于3 for(var k=0;k0){ return true;//有可消除方格 }else{ utlplayWav("00003.mp3",2); return false;//无可消除方格 } }; } if(typeof(Board.prototype.clear) == "undefined"){ Board.prototype.clear = function(posarr,sparr){//消除符合要求的方格 if(sparr.length == 0){return;} for(var i=0;i