Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите пожалуйста написать код.

Вова Смирнов Ученик (209), на голосовании 1 год назад
Нужно написать код discord.js. Смысл кода в том, что при определённой команде в чате, можно было оставить ссылку(и). И чтобы при определённой команде в чате, участники сервера могли эти ссылки увидеть и перейти по ним. Например:
Создатель пишет УСЛОВНУЮ команду в чате:
/createlistlink [заданное имя] [заданная(ые) ссылка(и)]
Если несколько ссылок, то:
/createlistlink [заданное имя] [заданная(ые) ссылка(и)], [заданное имя] [заданная(ые) ссылка(и)], [заданное имя] [заданная(ые) ссылка(и)], [заданное имя] [заданная(ые) ссылка(и)] и тд..

Участник пишет УСЛОВНУЮ команду в чате:
/viewlistlink и ему выпадают все заданные создателем ссылки.

Если не понятно, то вот как должно выглядеть в чате:

Создатель:
/createlistlink Яндекс https://ya.ru/?utm_referrer=https://yandex.ru/ , Гугл https://www.google.ru/ , Яху https://www.yahoo.com/

Участник:
/viewlistlink

Бот(ответ Участнику):
Яндекс https://ya.ru/?utm_referrer=https://yandex.ru/
Гугл https://www.google.ru/
Яху https://www.yahoo.com/

Помогите пожалуйста сделать код. Нужно, чтобы по ссылке можно было перейти и чтобы бот выдавал ссылки списком.
Голосование за лучший ответ
ima family Знаток (496) 1 год назад
 const Discord = require('discord.js'); 
const client = new Discord.Client();
const prefix = '/';

let linkList = {};

client.on('message', message => {
if (!message.content.startsWith(prefix) || message.author.bot) return;

const args = message.content.slice(prefix.length).trim().split(/ +/);
const command = args.shift().toLowerCase();

if (command === 'createlistlink') {
const name = args.shift();
const links = args.join(' ').split(', ');

linkList[name] = links;

message.reply(`Link list ${name} created.`);
} else if (command === 'viewlistlink') {
const name = args.shift();

if (!linkList[name]) {
message.reply(`Link list ${name} not found.`);
return;
}

const links = linkList[name].join('\n');

message.reply(`Links for ${name}:\n${links}`);
}
});

client.login('your-token-goes-here');
Этот код прослушивает сообщения в чате и проверяет, начинаются ли они с префикса /. Если это так, он разбивает сообщение на аргументы и проверяет, какая команда была использована. Если использовалась команда createlistlink, она принимает первый аргумент как имя списка ссылок, а остальные аргументы — как добавляемые ссылки. Затем он добавляет их в объект с именем linkList. Если использовалась команда viewlistlink, она принимает первый аргумент в качестве имени списка ссылок и извлекает ссылки из linkList.
Похожие вопросы