Здравствуйте! Наперед скажу, кто не знает либ discord.js, попрошу не высказывать тут свое мнение, а просто выйти.
Вообщем, есть у меня код, который меняет цвет определенной роли с определенной задежкой. Но проблема в том, что discord API банит через какое-то кол-во времени. И я хочу вот спросить, можно ли как-то это обойти (бан (ранее код работал идеально, но как только внесли изменения разработчики discord, сразу начались траблы))? Ниже предоставлю код:
const Discord = require("discord.js");
const client = new Discord.Client();
var server;
var this_role;
var active = false;
const role_id = "593425956576821279";
const server_id = "546940290024603649";
const token = "";
const delay = 200;
const mode = 1; // 0 - Random, 1 - Gradient
var colors_array = ["#000000",
"#0C090A",
"#2C3539"];
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
server = client.guilds.get(server_id);
setTimeout(function() {
this_role = server.roles.get(role_id);
}, 2000)
});
client.on('message', msg => {
if (msg.author.id == '405438071174201346') {
if (msg.content == 'e!start'){
if (mode == 0){
active = true
RainRole();
} else if (mode == 1){
active = true
GradientRole();
}
} else if(msg.content == "e!stop"){
active = false;
}
}
});
var current_color = 0;
function GradientRole() {
setTimeout(function() {
this_role.setColor(colors_array[current_color])
if (current_color == colors_array.length)
current_color = 0;
current_color++;
if (active)
GradientRole();
}, delay);
}
function RainRole() {
setTimeout(function() {
this_role.setColor(getRandomColor())
if (active)
RainRole();
}, delay);
}
function getRandomColor() {
var letters = '0123456789ABCDEF';
var color = '#';
for (var i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)];
}
return color;
}
client.login(token);