Добавьте сообщения от пользователя в массив и выберите случайным образом

#node.js #discord #discord.js

#node.js #Discord #discord.js

Вопрос:

Правильно, итак, что я хочу сделать, это получить последние x сообщения (x определено заранее) и добавить каждое сообщение в массив. Затем я хочу случайным образом выбрать y сообщение или несколько, если это то, что я хочу.

Вот что у меня есть до сих пор:

  var numbermin = parseInt(min)
const collector1 = message.channel.createMessageCollector(filter, { max: numbermin })
    message.channel.send(`Now add your messages. Remember only the first ${min} will be counted`)
    collector1.on("collect", (m) => {
      var msg1 = m.content
      var msg2 = m.content
      var msg3 = m.content

      let replies = [msg1, msg2, ms3]
  

min это количество сообщений, которые были определены ранее.

Ответ №1:

 var numbermin = parseInt(min)
const collector1 = message.channel.createMessageCollector(filter, { max: numbermin })
    message.channel.send(`Now add your messages. Remember only the first ${min} will be counted`)
    collector1.on("collect", (m) => {
      var msg1 = m.content
      var msg2 = m.content
      var msg3 = m.content

      let replies = [msg1, msg2, ms3]
      let response = replies[Math.floor(Math.random() * replies.length)] //generates a random messages from the table "replies"
      message.channel.send(response) //sends the random message
  

Комментарии:

1. На самом деле он не отправляет случайное число. Кроме того, я хочу, чтобы он составлял таблицу массивов на сумму min .

2. Для добавления в таблицу в javascript вы можете использовать replies.push(variable) , и какой номер вы хотите отправить?

3. Извините, я имел в виду случайное сообщение, а не число. Что касается replies.push(variable) , я думаю, я должен уточнить. После отправки первого сообщения. Я хочу, чтобы он подождал, пока min не будут отправлены все последние сообщения, а затем выбрал оттуда случайное. min может быть от 1 до 10.