let msgCount = 0; // This being outside the event in index.js // Event here client.on("messageCreate", async(message)=>{ if (message.author.bot) return; if (message.channel.id === "id here") { msgCount = msgCount + 1; } if (msgCount === 100) { const channel = await client.channels.cache.get("id here") channel.send("hi") } })Pero solo envía el mensaje 1 vez y no restablece el contador a 0, por lo que solo funciona 1 vez, ¿cómo puedo solucionarlo?
Puede esperar a que se envíe el mensaje y luego establecer la variable msgCount en 0 .
let msgCount = 0; // This being outside the event in index.js // Event here client.on("messageCreate", async (message) => { if (message.author.bot) return; if (message.channel.id === "id here") { msgCount = msgCount + 1; } if (msgCount === 100) { const channel = await client.channels.cache.get("id here") await channel.send("hi") msgCount = 0 } })Nunca lo reinicias... solo lo incrementas. Simplemente use esto y lo cambiará nuevamente a 0 cuando se envíe el mensaje
if (msgCount === 100) { const channel = await client.channels.cache.get("id here") channel.send("hi") msgCount = 0 }