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;j
0){
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