#discord #discord.js
#Discord #discord.js
Вопрос:
Я здесь пытаюсь создать Discord-бота с помощью NodeJS или Discord.js . Я хочу создать сообщение, которое отправляется каждый день, но с переменной, которая также увеличивается на 1 каждый день, например, день 1: год 1, день 2: год 2 и так далее.
Но, однако, я понятия не имею, как это сделать, потому что я новичок в Discord.js . Вот мой код:
const discord = require("discord.js");
var client = new discord.Client();
client.on('message', function(message) {
// Now, you can use the message variable inside
if (message.content === "$loop") {
daytime = 0;
var interval = setInterval (function () {
dayResult = daytime 1;
// use the message's channel (TextChannel) to send a new message
message.channel.send("quack " dayResult)
.catch(console.error); // add error handling here
}, 86400 * 1000);
}
});
1 день = 86400 секунд, если я прав.
Было бы очень полезно, если бы вы мне помогли.
Комментарии:
1. 86400 * 1000 означает 1000 дней.
2. @Jakye я почти уверен, что это равно одному дню.
3. Мой плохой. Я насчитал 86400 секунд, а не мс.
Ответ №1:
Вместо создания новой переменной вы должны просто увеличивать ее с помощью оператора
var daytime = 0;
var interval = setInterval(() => {
message.channel
.send(`quack ${ daytime}`) // increment the variable
.catch(console.error); // add error handling here
}, 86400 * 1000);
Пример фрагмента кода:
var stopwatch = 0;
setInterval(() => console.log(`It's been ${ stopwatch} second(s)`), 1000);
Комментарии:
1. Если вы не можете остановить это с
ctrl c
помощью, я не думаю, что проблема в коде.2. Разве вы не установили значение
setInterval
один день?3. У вас одновременно запущено несколько экземпляров вашего бота? Это объясняет обе проблемы. Попробуйте перезагрузить компьютер.
4. Нет, у меня нет нескольких экземпляров, раньше у меня была эта проблема с несколькими экземплярами, теперь эта штука рассылает спам без нескольких экземпляров