Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

110
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!