Как мне получить количество участников сервера discord с discord.js

#javascript #discord.js

#javascript #discord.js

Вопрос:

Как мне закодировать моего бота discord, чтобы найти количество участников на сервере discord и сохранить его как переменную. Во-вторых, как мне закодировать моего бота discord для удаления сообщений других пользователей при определенном событии (например, если сообщение содержит вульгарное слово) спасибо

Ответ №1:

Чтобы получить количество участников сервера, .memberCount свойство будет работать

 let membercount = message.guild.memberCount
  

Для удаления нецензурных слов,

 if (message.toLowerCase().includes(`poop`) {
  message.delete()
  message.channel.send(`poop is a swear word`)
}
  

Ответ №2:

Для первого:

 let members = message.guild.members;
  

Для второго вам следует использовать регулярное выражение:

 if (message.content.match(/SwearWord/)) message.delete({ reason: "Swearword" });
  

Вам просто нужно настроить регулярное выражение swearword. Кроме того, обратите внимание на следующий раз: пожалуйста, предоставьте дополнительную информацию, например, какой-нибудь код, показывающий, что вы уже пробовали.

Ответ №3:

чтобы получить количество участников в гильдии, вы должны получить memberCount свойство из Guild . n пример —

 const memberCount = message.guild.memberCount
  

Ответ №4:

Вы можете использовать memberCount свойство a Guild , чтобы узнать, сколько у него участников. введите описание изображения здесь


Для обнаружения нецензурных слов вы можете использовать includes() функцию. Пример того, как работает .includes() функция:

 // example message
const message = 'Hello World!'

if (message.includes('Hello'))
  console.log('This message includes the word hello');  

Если первая строка включает вторую заданную строку, эта функция вернет true . В противном случае он вернется false . Это само по себе будет работать нормально, если у вас есть только одно ругательство для обнаружения, но есть более эффективный метод, если их несколько.

 // another example message
const message = 'My name is John. I like baking, dancing, and playing Mario.';

// now, create an array of every swear word you'd like to avoid
// make sure they're in lower case!
const array = ['baking', 'dancing', 'playing'];

var foundInText = false;

// here's the fun part. create a loop iterating through every element in your
// blacklisted word array

for (word of array) {
  // if one of the words is included in the message,
  // flip the `foundInText` variable to true!
  if (message.toLowerCase().includes(word)) {
  foundInText = true;
  break; // break out of the loop, a word was found
  };
};

// if a word was found...
if (foundInText) {
  // you can do whatever you want here
  // including deleting the message,
  // sending a warning...
  // whatever you want
  console.log('This string has a blacklisted word');
};