Фильтр чата Discordjs - PullRequest
       8

Фильтр чата Discordjs

0 голосов
/ 30 октября 2018

Я создаю бот discord.js, и мне было интересно, как добавить к нему фильтр чата. Как пользователь говорит f***, и он будет автоматически удален.

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

Вы можете сделать это с массивом слов,

var profanities = ["test1", "test2", "..."];

затем в вашем обработчике сообщений bot.on, или как вы используете для обработки сообщений,

bot.on('message', async message => {
    let msg = message.content.toLowerCase();
    let Admin = message.guild.roles.find('name', "Admin"); // Change this to meet what you want
    let General = message.guild.channels.find(`name`, "general"); // All text channels are lowecase. Change this to meet what you want
    for (x = 0; x < profanities.length; x++) {
        if(message.member.roles.has(Admin.id) || message.channel.id === General.id) return; // if you changed the name of the variables above, change these too.
        if (msg.includes(profanities[x])){
            await message.reply("You cannot say that here!")     
            message.delete()
            // Your code here
            return;     
        }
    }
});

EDIT: Это очень просто, он не будет искать заменяющие буквы, такие как $, @ или цифры / пробелы, если вы не закодируете их непосредственно, в котором вы можете иметь список слов, а затем консольный журнал для каждого слова с замещающими буквами.

0 голосов
/ 30 октября 2018
client.on('message', message => {
    message.delete(message.content.replace(/asshole/gi))
    .catch(console.error);
});

Это просто пример, который вы можете сделать с текстовым массивом.

...