Foros del Web » Programando para Internet » Javascript »

Comprobar casillas de conecta4

Estas en el tema de Comprobar casillas de conecta4 en el foro de Javascript en Foros del Web. Hola, un saludo a todos antes de nada, bueno estoy haciendo un juego de conecta 4. Caen las fichas, cambia de turno y se colocan ...
  #1 (permalink)  
Antiguo 01/06/2012, 05:22
 
Fecha de Ingreso: junio-2012
Mensajes: 1
Antigüedad: 11 años, 9 meses
Puntos: 0
Comprobar casillas de conecta4

Hola, un saludo a todos antes de nada, bueno estoy haciendo un juego de conecta 4. Caen las fichas, cambia de turno y se colocan unas encima de otras.

Hasta ahí bien. Ahora, la parte de comprobar si hay 4 seguidas en horizontal, que he llamado funcion validar, debería hacer lo siguiente;

-En el caso de que la primera sea igual al valor que busca, (por ejemplo, 2 ), busca el siguiente en la tabla( el de la derecha) e incrementa el contador en 1 hasta llegar a 4. Si llega a 4, el jugador gana.

Sin embargo, hay alguna parte de ahí que no me termina de funcionar bien y contador no sube de valor, ¿alguien puede ayudarme? muchas gracias

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Conecta4</title>
<script language="javascript">
var turno=0;
var posicion=new Array;

for(n=0;n<49;n++)
{
	posicion[n]=0;
}

function mostrarimagen(num)
{
	if (turno==0){
	document.images[num].src="Ficha1.gif";}
	else{
	document.images[num].src="Ficha2.gif";}
}

function quitarimagen(num)
{
	document.images[num].src="Fondo.gif";
}

function colocarimagen(num)
{
	var a=num+42;
				//recorro todas las casillas
	if ((posicion[a])==0)
	{
			
			
			if (turno==0)
			{
			document.images[a].src="Ficha1.gif";
			posicion[a]=1;
			
			turno=1;
			validar(1);
			
			}
			else 
			{
			document.images[a].src="Ficha2.gif";
			posicion[a]=2;
			
			turno=0;
			validar(2);
			}
			
			
	
	}
	
	else
	{
	num-=7;
	if (num > -42)colocarimagen(num);
	}
}

function validar(num)
{

var cont=0;


for(l=0;l<7;l++)
{
	for(j=0;j<7;j++)
	{
			if (posicion[a]==validar)
			{
					
					cont++;
					a++;
			}
				else  
				{
				cont=0;		
				}
			
			if (cont==4)
				alert("Victoria");

	}
	
}

}

</script>
</head>


<body onload="validar(actual,a);">

<h1 align="center">Conecta Cuatro </h1>
<form name="f">
	<table align="center">
    <tr>
    	<td><a href="javascript:void colocarimagen(0)"><img src="Fondo.gif" onmouseover="mostrarimagen(0);" onmouseout="quitarimagen(0);"/></a></td>
        <td><a href="javascript:void colocarimagen(1)"><img src="Fondo.gif" onmouseover="mostrarimagen(1);" onmouseout="quitarimagen(1);"/></a></td>
        <td><a href="javascript:void colocarimagen(2)"><img src="Fondo.gif" onmouseover="mostrarimagen(2);" onmouseout="quitarimagen(2);"/></a></td>
        <td><a href="javascript:void colocarimagen(3)"><img src="Fondo.gif" onmouseover="mostrarimagen(3);" onmouseout="quitarimagen(3);"/></a></td>
        <td><a href="javascript:void colocarimagen(4)"><img src="Fondo.gif" onmouseover="mostrarimagen(4);" onmouseout="quitarimagen(4);"/></a></td>
        <td><a href="javascript:void colocarimagen(5)"><img src="Fondo.gif" onmouseover="mostrarimagen(5);" onmouseout="quitarimagen(5);"/></a></td>
        <td><a href="javascript:void colocarimagen(6)"><img src="Fondo.gif" onmouseover="mostrarimagen(6);" onmouseout="quitarimagen(6);"/></a></td>
    </tr>
    
    <script language="javascript">
	for (r=0;r<6;r++)
	{
		document.write('<tr>')
		for (c=0;c<7;c++)
		{
			document.write('<td>')
			document.write('<img src="Fondo.gif" />')
			document.write('</td>')
		}
		document.write('</tr>')
	}
	
	</script>
    </table>
    
    <br />
    <input type="text" value="1" name="turno" />
</form>
</body>
</html>
Subo el archivo para que veais las fichas y todo
http://www.4shared.com/zip/f01wVPkg/Conecta-4.html?

Etiquetas: funcion, html, input
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:19.