así que he estado tratando de hacer que cada vez que el usuario envíe un mensaje haya una probabilidad del 50/50 de que el bot reaccione con un emoji, sin embargo, el número solo se selecciona cada vez que reinicio el bot. ¿Alguna idea sobre cómo puedo hacer que elija el número cada vez que se activa el comando?
Traté de usar setInterval pero eso no funcionó, así que no sé
aquí código;
const userID = "user id" let random = Math.floor(Math.random()*2) client.on('messageCreate', (message) => { if(random === 1) { if(message.author.id === userID) { message.react('emoji'); } } });Simplemente, defina la variable random dentro del evento messageCreate .
Ejemplo:
const userID = "user id"; client.on('messageCreate', (message) => { let random = Math.floor(Math.random() * 2); if (random === 1) { if (message.author.id === userID) { message.react('emoji'); } } });Si define random dentro del evento messageCreate , significa que se genera un nuevo número aleatorio cada vez que se llama al par.
const userID = "user id" client.on('messageCreate', (message) => { let random = Math.floor(Math.random()*2) if(random === 1) { if(message.author.id === userID) { message.react('emoji'); } } });Como Tyler2P ya ha mostrado un ejemplo, solo quería explicar por qué funciona. Gracias
Podría usar una probabilidad Math.random 50/50, como esta:
const userID = "user id" client.on('messageCreate', (message) => { if (Math.random() >= 0.5) { if (message.author.id === userID) { message.react('emoji'); } } });