Задать вопрос
@Blockbatr

Что надо сделать, чтобы бот в дискорде мог выдавать наказания и тд?

Решил создать своего бота для сервера , нужно сделать так , чтобы бот мог выдавать наказания , и чтобы к ним имели разрешения игроки только с определенными ролями:
^blockchat (Имя участника) (Время) - заблокировать чат.
^blockplayer (Имя участника) (Время) - забанить игрока.
^kickplayer (Имя участника) - выгнать участника.
^logchat ( Названия канала ) - задать чат для логов.
^print ( Текст ) - написать от имени бота.
^authorise - авторизоваться , допустим , зашел человек , у него показывает 1 канал , и написано , напишите эту команду , чтобы авторизоваться , он пишет , и уже показываются все каналы которые надо , а канал с авторизацией как бы убирается.
Буду благодарен
  • Вопрос задан
  • 5714 просмотров
Подписаться Средний Комментировать
Пригласить эксперта
Ответы на вопрос 1
fgvnovoross
@fgvnovoross
Могу назвать лишь часть команд как сделать. Над остальными сам парюсь.
Команды которые могу назвать:
^kickplayer;
^blockplayer;
^print.
Так-же могу предложить помощь по команде ^authorise, но только в том случае, если ты делаешь бота для одного сервера а не для общего пользования. Ты делаешь для одного сервера или нет?

По тем трём командам тут. Если что, то я привожу самые простые примеры, но можно сделать и получше! Если что - пиши мне в Дискорд, помогу!
Мой тег Дискорд:
fgvnovoross#3014

^kickplayer:
var prefix = "^";

client.on("message", msg => {
if(!msg.guild) return;
if(!msg.content.startsWith("^") return;
const args = msg.content.slice(prefix.length).trim().split(/ +/g);
        const command = args.shift().toLowerCase();
if(command === "kickplayer"){
let member = msg.mentions.members.first();
member.kick().catch(err => constole.log(err));
}
});


^blockplayer:

var prefix = "^";

client.on("message", msg => {
if(!msg.guild) return;
if(!msg.content.startsWith("^") return;
const args = msg.content.slice(prefix.length).trim().split(/ +/g);
        const command = args.shift().toLowerCase();
if(command === "blockplayer"){
let member = msg.mentions.members.first();
let player = args[0];
if(!member === player) return (msg.reply("неправильно введены данные!"));
let days = args[1];
member.ban(days).catch(err => {
console.log(err);
msg.reply("ошибка!");
});

}
});


^print:

var prefix = "^";

client.on("message", msg => {
if(!msg.guild) return;
if(!msg.content.startsWith("^") return;
const args = msg.content.slice(prefix.length).trim().split(/ +/g);
        const command = args.shift().toLowerCase();
if(command === "print"){
let text = args.join(" ");
  msg.delete().catch(err => console.log(err));
  msg.channel.send(text);
}
});
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы