var cuadros=10;var bombas=10;var tablero,Marcas;var Ganadas=0;var Perdidas=0;var Quedan=cuadros*cuadros;var Activo=false;var clase=new Array("boton1","bandera","duda");var IE=document.all?true:false;var Doc=window.document;if(window.addEventListener)Doc.addEventListener("mousedown",Distingue,false);else if(window.attachEvent)Doc.attachEvent("onmousedown",Distingue);else Doc.onmousedown=Distingue;Doc.oncontextmenu=function(){return false};function Distingue(evt){var evento=(IE?event.button:evt.which);var objeto=(IE?event.srcElement:evt.target);var lista=objeto.id.split('_');if(lista.length!=3||objeto.value!='')return false;else if(evento>=2)Avanza(objeto,parseInt(lista[1]),parseInt(lista[2]));else Chequea(objeto,parseInt(lista[1]),parseInt(lista[2]));return false}function Avanza(obj,x,y){Marcas[x][y]=++Marcas[x][y]%3;obj.className=clase[Marcas[x][y]];return false}function Bombas(B){var i,j;var Restan=B;while(Restan>0){i=Math.floor(cuadros*Math.random());j=Math.floor(cuadros*Math.random());if(tablero[i][j]==0){tablero[i][j]=-1;Restan--}}for(i=0;i<cuadros;i++)for(j=0;j<cuadros;j++)if(tablero[i][j]<0){Marca(i-1,j-1);Marca(i-1,j);Marca(i-1,j+1);Marca(i,j-1);Marca(i,j+1);Marca(i+1,j-1);Marca(i+1,j);Marca(i+1,j+1)}}function Marca(x,y){if(x>=0&&x<=cuadros-1&&y>=0&&y<=cuadros-1)if(tablero[x][y]>=0)tablero[x][y]++}function Tablero(N){var i,j;tablero=new Array(N);Marcas=new Array(N);for(i=0;i<N;i++){tablero[i]=new Array(N);Marcas[i]=new Array(N);for(j=0;j<N;j++){tablero[i][j]=0;Marcas[i][j]=0}}}function Construye(){var i,j;Para();delete(tablero);delete(Marcas);cuadros=parseInt(Doc.formulario2.Tamano.value);bombas=parseInt(Doc.formulario2.N_bombas.value);if(cuadros>25||cuadros<9){cuadros=(cuadros>25?25:9);Doc.getElementById('Tamano').value=cuadros;alert("El tablero ha de tener un tama�o entre 9x9 y 25x25")}if(bombas>=cuadros*cuadros||bombas<=0){alert("El numero de bombas debe estar comprendido entre 1 y "+(cuadros*cuadros-1).toString());Doc.getElementById('N_bombas').focus();Doc.getElementById('N_bombas').select();return}if(Activo){Doc.getElementById("Perdidas").innerHTML=++Perdidas;Activo=false}Doc.getElementById('cuadro').style.width=(cuadros+2)*25;Tablero(cuadros);Quedan=cuadros*cuadros;var Contenido="<form action='#' name='form1'><table class='ancha' align='right'>";for(i=0;i<cuadros;i++){Contenido=Contenido+"<tr>";for(j=0;j<cuadros;j++)Contenido=Contenido+"<td><input type='button' class='boton1' id='boton_"+i.toString()+"_"+j.toString()+"'><\/td>";Contenido=Contenido+"<\/tr>"}Contenido=Contenido+"<\/table><\/form>";Doc.getElementById('cuadro').innerHTML=Contenido;Bombas(bombas);Arranca()}function Abre(x,y){var p=y+cuadros*x;if(x>=0&&x<cuadros&&y>=0&&y<cuadros)if(tablero[x][y]>=0&&(Doc.form1.elements[p].value.length==0)&&Marcas[x][y]==0){Doc.form1.elements[p].value=tablero[x][y];Doc.form1.elements[p].className="color"+tablero[x][y];Quedan--;if(tablero[x][y]==0){Abre(x-1,y-1);Abre(x-1,y);Abre(x-1,y+1);Abre(x,y-1);Abre(x,y+1);Abre(x+1,y-1);Abre(x+1,y);Abre(x+1,y+1)}}}function Chequea(obj,x,y){var i,j;Activo=true;Marcas[x][y]=0;if(tablero[x][y]>=0)Abre(x,y);else{Para();for(i=0;i<cuadros;i++)for(j=0;j<cuadros;j++)if(tablero[i][j]>=0){Doc.form1.elements[j+cuadros*i].value=tablero[i][j];Doc.form1.elements[j+cuadros*i].className="color"+tablero[i][j]}else Doc.form1.elements[j+cuadros*i].className="bomba";Doc.getElementById("Perdidas").innerHTML=++Perdidas;Quedan=0;Activo=false;alert("Perdiste")}if(Quedan==bombas){Para();for(i=0;i<cuadros;i++)for(j=0;j<cuadros;j++)if(tablero[i][j]<0)Doc.form1.elements[j+cuadros*i].className="bomba";Doc.getElementById("Ganadas").innerHTML=++Ganadas;Activo=false;alert("Ganaste")}return false}function Limpiar(){var i,j;Para();if(Activo){Doc.getElementById("Perdidas").innerHTML=++Perdidas;Activo=false}for(i=0;i<cuadros;i++)for(j=0;j<cuadros;j++){Doc.form1.elements[j+cuadros*i].value="";Doc.form1.elements[j+cuadros*i].className="boton1"}Quedan=cuadros*cuadros}