Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Нужна помощ для бота Дискорда для выбора картинок (https://javascript.ru/forum/node-js-io-js/79594-nuzhna-pomoshh-dlya-bota-diskorda-dlya-vybora-kartinok.html)

Zetta 26.02.2020 10:03

Нужна помощ для бота Дискорда для выбора картинок
 
Привет всем.
Может кто скинуть готовый код бота для дискорда?
Задача всего одна:
Что бы при написание определенной команды в чат, он показывал одну из трех картинок в том же чате?Картинки на ibb.

Я чет мучаюсь, но не чего не получается :(

Nexus 26.02.2020 13:32

Вы просите готовый скрипт с нуля.

Это работа, и за нее обычно платят деньги.
Для таких сообщений предназначен раздел форума "Работа".

Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела.

Zetta 26.02.2020 14:12

У меня есть бот:

const { Client, Attachment } = require('discord.js');
const client = new Client();

client.on('ready', () => {
console.log('Запустились питомцы');
});

client.on('message', message => {
var prefix = '!'
var msg = message.content;

if (msg === prefix + 'image') {
message.channel.send('Message that goes above image', {
files: [
"https://i.ibb.co/qgqqz9r/92893.png"
]
});
}
});



client.login



Подскажите как добавить массив и команду, что бы бот выбирал рандомно из этого массива.

Nexus 26.02.2020 15:05

Для того, чтобы отформатировать код можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.


Цитата:

Сообщение от Zetta
Подскажите как добавить массив и команду, что бы бот выбирал рандомно из этого массива.

Для решения задачи вам нужен массив с адресами доступных вам картинок и функция, которая вернет вам случайное число от 0 до «числа_доступных_картинок - 1».
Первое вы и сами, думаю, легко сделаете, а второе гуглится элементарно: https://www.google.com/search?q=js+get+random+int

В итоге получится что-то типа этого:
const {Client, Attachment} = require('discord.js');
const client = new Client();

client.on('ready', () => {
    console.log('Запустились питомцы');
});

client.on('message', message => {
    const prefix = '!'
    const msg = message.content;
    
    const getRandomInt = max => Math.floor(Math.random() * Math.floor(max));
    const availableImages = [
        'https://i.ibb.co/qgqqz9r/92893.png',
        'https://i.ibb.co/qgqqz9r/92894.png',
    ];

    if (msg === prefix + 'image') {
        message.channel.send('Message that goes above image', {
            files: [
                availableImages[getRandomInt(availableImages.length - 1)]
            ]
        });
    }
});


Часовой пояс GMT +3, время: 09:50.