Hola
coozne:
Creo que deberías replantear tu sistema de pregunta y luego if-else a un esquema de código más separado entre datos y funcionamiento, las dos partes separadas y diferenciadas. Creo que es lo que mencionas de tablas (arrays?). Si tienes las preguntas en un array está más controlado. Es más, yo haría un array para preguntas no contestadas y otro para preguntas contestadas. De esa manera sólo hay que ir recorriendo el primero, el segundo lo dejamos en paz (en realidad no requieres ni el segundo ahora que me doy cuenta).
El esquema que te propongo sería así:
Código PHP:
<!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" xml:lang="es" lang="es">
<head>
<meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<meta name="Author" content="derkeNuke" />
<title>Página nueva</title>
<style type="text/css">
</style>
</head>
<body>
<script type="text/javascript">
<!--
var vueltasTotales = 2;
var pregs1 = new Array(); // todas las preguntas, iremos eliminando las contestadas
pregs1["a"] = "Amb la A , quin es l'ocell nombrat com imperial?";
pregs1["b"] = "Amb la B , quin es el nom de la ciutat del F.C.Barcelona?";
pregs1["c"] = "Amb la C , lloc tencat i descobert que serveix per tancar al bestia";
pregs1["d"] = "Amb la D , forma geometrica de 6 costats que serveix per d'ajuda en jocs";
// ....
var pregs2 = new Array(); // preguntas que dejamos para la segunda vuelta (o la vuelta n)
var respuestas = new Array();
respuestas["a"] = "aguila";
respuestas["b"] = "barcelona";
respuestas["c"] = "corral";
respuestas["d"] = "dau";
// ....
function pasapalabra() {
juego:
for(var vueltaActual=1, preguntas; vueltaActual<=vueltasTotales; vueltaActual++) {
if( vueltaActual==1 ) preguntas = pregs1; // usamos las preguntas correspondientes a cada ronda
else if( vueltaActual==2 ) preguntas = pregs2;
for(var letra in preguntas ) {
var respuesta = prompt("Estamos en la vuelta "+vueltaActual+".\r"+preguntas[letra]+"\r\r(Cancelar para Pasapalabra)", "");
if( !respuesta ) { // Pasapalabra
alert("Pasamos palabra");
pregs2[letra] = preguntas[letra]; // pasamos la pregunta a pregs2
delete pregs1[letra];
break juego;
}
else { // Ha habido respuesta
if( respuesta.toLowerCase() == respuestas[letra].toLowerCase() ) {
alert("¡BIEN!");
delete pregs1[letra];
}
else {
alert("MAL...");
delete pregs1[letra];
}
}
}
}
alert("Has recorrido todas las preguntas en las 2 vueltas.");
}
// -->
</script>
<button type="button" onclick="pasapalabra(); this.value='Seguir'">Empezar</button>
</body>
</html>
Quizás sería justificable meter las preguntas en objetos, pero me ha parecido complicar demasiado para obtener el mismo resultado.
Espero que te inspire.
Saludos