Ответы пользователя по тегу discord.js
  • Как сделать слеш команду в Discord.js боте?

    Surviavlist
    @Surviavlist
    Разработчик-любитель на Node.js
    Чтобы добавить слэш команду тебе нужно её создать и зарегистрировать
    Ответ написан
    Комментировать
  • Как исправить ошибку бота для дискорда?

    Surviavlist
    @Surviavlist
    Разработчик-любитель на Node.js
    Вставь в начале скрипта:
    const { Client } = require("discord.js")
    Ответ написан
    Комментировать
  • Как мне выдать роль по кнопке?

    Surviavlist
    @Surviavlist
    Разработчик-любитель на Node.js
    Ты можешь банально создать коллектор для ожидания нажатия кнопки:

    const { ComponentType } = require('discord.js') // Добавь в начало скрипта
    
    // Фильтр проверяет, нажал ли кнопку человек, вызвавший команду, где <i>i</i> — каждое нажатие
    const filter = i => {
    	i.deferUpdate();
    	return i === message.author.id && i.
    }
    
    //  replyMessage — сообщение, отправленное ботом
    let interaction = replyMessage.awaitMessageComponent({ filter: collectorFilter, componentType: ComponentType.Button, time: 60000 }) // time — время, которое коллектор будет ждать сообщение. Бот подождёт не более 60 секунд
    
    // Делай с interaction далее то, что потребуется. Проверь, какую кнопку нажал пользователь через customId и отвечай на взаимодействие


    Пример взят с discordjs.guide
    Ответ написан
    Комментировать
  • Как сделать, чтобы бот отвечал эмодзи на своё сообщение?

    Surviavlist
    @Surviavlist
    Разработчик-любитель на Node.js
    Для этого тебе необходимо получить само сообщение бота, например, при его отправке.

    client.on('messageCreate', async (message) => {
        const botMessage = await message.reply("Я бот") // Получение сообщения бота
        await botMessage.react('') // Добавление реакции на сообщение, которое только что отправил бот
    
        // await необходим для того, чтобы подождать, когда сообщение отправится в дискорде, чтобы на него можно было поставить реакцию
    })
    Ответ написан
    Комментировать