Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

109
Vistas
Ejecute un código después de 10 segundos si una variable no cambió

Estoy creando un juego para un bot de discord que usa la API Discord.js e intento ejecutar un código después de 10 segundos si la variable jugando (verdadero/falso) no cambió (para evitar que una primera persona termine su juego y un la segunda persona inicia un juego nuevo y se le acaba el tiempo después de unos segundos), así que ya hice el temporizador de 10 segundos pero no puedo resolver el segundo problema, así que esta es una versión simplificada de mi código:

 if(message.content === "?guess"){ playing = true; setTimeout(function(){ message.reply("time's up!"); playing = false; }, 10000); }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Simplemente agregue una condición if dentro de la devolución de llamada setTimeout para verificar si todavía están jugando y solo luego finalice el juego.

 const globalGameTimeout = null; ... if(message.content === "?guess"){ playing = true; globalGameTimeout = setTimeout(function(){ if (playing) { message.reply("time's up!"); playing = false; } }, 10000); } .... if (user guessed correctly or game ends in some other way) { clearTimeout(globalGameTimeout); }

clearTimeout(...) se asegurará de que un antiguo setTimeout no se siga ejecutando de forma falsa cuando otro jugador haya finalizado el juego anterior y haya comenzado uno nuevo.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda