这是我的代码,有人说我应该使用Math.floor
,但我不知道该将其确切放置在何处
bot.user.setActivity({ name: 'Arth agora em JavaScript~', type: 'PLAYING' })
});
答案 0 :(得分:0)
您将需要一系列不同的活动,您可以插入任意多个活动。
setInterval
每十秒钟(由10000毫秒指定)执行箭头功能内的代码。箭头函数中的代码将从数组中随机选择一个活动。
const activities = [
{ name: 'Arth agora em JavaScript~', type: 'PLAYING' },
{ name: 'Another activity', type: 'PLAYING' }
];
setInterval(() => bot.user.setActivity(activities[Math.floor(Math.random() * activities.length)]), 10000);
答案 1 :(得分:0)
您可以使用递归setTimeout(比setInterval更好),它将执行您想要的每一个时间,并且不会导致任何类型的内存泄漏。
function Foo(){
// your code here
setTimeout(Foo, 5000); // you can define your function and the amount of time here
}
Foo();
我不太确定您的请求,但是您希望机器人的状态每隔x秒更改一次,您可以在代码中应用您的概念,并使用 Math.random()生成随机变量具有这种功能的数字:
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
Math.floor()仅将数字四舍五入到最接近的整数。
因此,最后,您可以将这两个代码结合起来并获得:
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
function updateStatus(){
bot.user.setActivity({ name: 'Random Status : ' + getRandomInt(1, 200), type: 'PLAYING' })
});
setTimeout(updateStatus, 5000); // you can define your function and the amount of time here
}
updateStatus();
但是,我会建议您建立一个更复杂的结构,例如客户端服务器,以在每个时间刷新数据包,但我什至不知道您的整个代码。
答案 2 :(得分:0)
您可以更改漫游器活动/状态
const activities_list = [
"RANDOM",
"help",
"Random Status"
];
setInterval(() => bot.user.setActivity(activities[Math.floor(Math.random() * activities_list.length)]), 10000);
答案 3 :(得分:-1)
使用setInterval()
:
setInterval(function () {
bot.user.setActivity({ name: 'Arth agora em JavaScript~', type: 'PLAYING' });
}, 10000); // 10 000 miliseconds = 10 seconds