#node.js #bots #discord #discord.js
#node.js #боты #Discord #discord.js
Вопрос:
Я программирую бота discord в node.js (не мастер) и я работаю над командой удара и запрета. Я пытаюсь заставить БОТА записывать журнал запрета пользователя. нравится запретить @причина пользователя. Я сделал ban @user, но я не могу создать причину.
if (!message.member.hasPermission("BAN_MEMBERS")) return;
if (message.content.startsWith(' ban')) {
const user = message.mentions.users.first();
if (user) {
const member = message.guild.member(user);
if (member) {
member.ban({
reason: 'reason',
}).then(() => {
message.channel.send(`${user.tag} BAN!`);
}).catch(err => {
message.channel.send('Bu çar çok güçlü, banlayamıyorum! ');
console.error(err);
});
} else {
message.channel.send('Kullanıcı sunucuda değil.');
}
} else {
message.channel.send('Adını ver banlayayım, sahip.');
}
}
});```
Комментарии:
1. редактировать: discord.js.org/#/docs/main/stable/class / … я нашел эту вещь, но я все еще не знаю, как ее использовать
Ответ №1:
Просто используйте member.ban('reason here')
. Используйте объект, если вам нужно удалить предыдущие сообщения и указать причину, например:
member.ban({days: 2, reason: 'bad'});
Теперь просто используйте эту настройку с указанием причины пользователя. Используйте переменную для причины как сокращенную версию массива аргументов, объединенную пробелами.
Редактировать: отображение контекста…
if (message.content.toLowerCase().startsWith(' ban')) { // changed to case insensitive command
const member = message.mentions.members.first(); // keep in mind it isn't the best practice to use message.mentions to retrieve an argument
if (!member) return message.channel.send('no member mentioned');
let reason = args.slice(2).join(' '); // arguments should already be defined
member.ban(reason)
.then(message.channel.send('success'))
.catch(err => {
message.channel.send('something went wrong');
console.error();
});
}
Комментарии:
1. я не знаю, куда добавить эти коды. не могли бы вы, пожалуйста?
2. Отредактированный ответ, чтобы показать контекст. Если вы не знаете, как разобрать сообщение на аргументы, пожалуйста, прочтите это .