Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Corrección de boton Nuevo Juego

  1. El problema original

En el código inicial, el botón "Nuevo Juego" siempre estaba activo. Eso causaba dos fallos:

  • El jugador podía presionarlo sin haber terminado la partida.
  • El removeAtribute tenía un error de sintaxis (faltaba una "t").
  1. La solución aplicada

Lo que hice fue manejar el estado del botón con los métodos de atributos en JavaScript:

a) El botón empieza deshabilitado

En el HTML lo dejé así:

button onclick="reiniciarJuego();" class="container__boton" id="reiniciar" disabled>
Nuevo Juego

==> Ese disabled hace que el botón no se pueda oprimir al inicio.

b) Cuando el jugador acierta el número secreto, lo activo

En la función verificarIntento():

if (numeroDeUsuario === numeroSecreto) {
asignarTextoElemento("p", Acertaste el número en ${intentos} ${(intentos === 1) ? 'intento' : 'intentos'} );
// Aquí habilito el botón
document.getElementById('reiniciar').removeAttribute('disabled');
}

==> removeAttribute('disabled') le quita el estado bloqueado al botón, y ahora sí se puede oprimir.

c) Cuando se presiona "Nuevo Juego", lo vuelvo a deshabilitar

En la función condicionesIniciales():

function condicionesIniciales() {
asignarTextoElemento('h1', 'Juego del número secreto');
asignarTextoElemento('p', 'Indica un número del 1 al 10');
numeroSecreto = generarNumeroSecreto();
intentos = 1;

// Lo vuelvo a deshabilitar
document.querySelector('#reiniciar').setAttribute('disabled', 'true');

}

De esa forma, el botón solo se habilita cuando el usuario acierta y vuelve a quedar bloqueado al reiniciar el juego.

1 respuesta

Hola, estudiante, espero que estés bien

Parece que has hecho un gran trabajo al implementar la funcionalidad del botón "Nuevo Juego" en tu código. Has abordado correctamente los problemas iniciales que encontraste, como el error de sintaxis y el hecho de que el botón estaba siempre habilitado. Además, has manejado bien el estado del botón utilizando setAttribute y removeAttribute para controlar cuándo el botón debe estar habilitado o deshabilitado.

Aquí hay un par de sugerencias y recordatorios que podrían ser útiles:

  1. Comentarios en el Código: Asegúrate de que tu código esté bien comentado. Esto no solo te ayudará a ti mismo a recordar lo que hace cada parte del código, sino que también será útil para otros que puedan revisar tu código en el futuro.

  2. Pruebas: Continúa probando tu aplicación para asegurarte de que todas las condiciones iniciales se restablezcan correctamente cada vez que se presiona el botón "Nuevo Juego". Esto incluye verificar que el número secreto se regenere y que el número de intentos se reinicie.

  3. Mejoras Futuras: Como mencionaste, siempre hay espacio para mejoras. Podrías considerar agregar más validaciones o incluso mejorar la interfaz de usuario para una mejor experiencia.

Parece que estás en el camino correcto con tu implementación. Continúa experimentando y mejorando tu código.

Espero haber ayudado y buenos estudios!