Stack Overflow на русском Asked by Touch me on January 15, 2021
Вот код, в консоли ошибок нет, только логи, он должен изменять цвет роли раз в заданный интервал, но он не меняет его
Заранее проверил, роли оно находит, и все логи такие, какими должны быть, просто на сервере роли не меняют цвета от слова совсем
В гугле есть подобные случаи, но я проверил и они не мой вариант
const Discord = require('discord.js');
const client = new Discord.Client();
const config = require('./config.json');
const size = config.colors;
const rainbow = new Array(size);
for (let i = 0; i < size; i++) {
const red = sin_to_hex(i, 0 * Math.PI * 2 / 3); // 0 deg
const blue = sin_to_hex(i, 1 * Math.PI * 2 / 3); // 120 deg
const green = sin_to_hex(i, 2 * Math.PI * 2 / 3); // 240 deg
rainbow[i] = '#' + red + green + blue;
}
function sin_to_hex(i, phase) {
const sin = Math.sin(Math.PI / size * 2 * i + phase);
const int = Math.floor(sin * 127) + 128;
const hex = int.toString(16);
return hex.length === 1 ? '0' + hex : hex;
}
let place = 0;
const servers = config.servers;
function changeColor() {
for (let index = 0; index < servers.length; ++index) {
client.guilds.cache.get(servers[index])
.roles.cache.find(guild => guild.name === config.roleName)
.setColor(rainbow[place])
.catch(console.error);
if (config.logging) {
console.log(`[ColorChanger] Changed color to ${rainbow[place]} in server: ${servers[index]}`);
}
if (place == (size - 1)) {
place = 0;
} else {
place++;
}
}
}
client.on('ready', () => {
console.log(`Logged in as ${client.user.username}!`);
if (config.speed < 10) {
console.log("The minimum speed is 60.000, if this gets abused your bot might get IP-banned");
process.exit(1);
}
client.generateInvite(["ADMINISTRATOR"]).then(link => {
console.log(link);
});
setInterval(changeColor, config.speed);
});
client.login(config.token);
Вот конфиг:
{
"token": "NjkxOTM1ODYwMDc3MzYzMjAw.XnnR******************************",
"servers": ["69193002**********"],
"roleName": "rainbow",
"colors": 40,
"speed": 25,
"logging": true
}
Вы делаете слишком частый вызов метода. Рекомендую установить Вам значение speed
в конфиге на 5000.
Answered by wilddip on January 15, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP