JDA использует RestActions
, они в основном позволяют ставить все действия в Discord, и без них ваши команды не будут отправляться в Discord. Ваш код не работает, потому что вы забыли включить RestAction.
Что касается ваших попыток добавить реакцию, прочитайте соответствующие документы JDA , чтобы получить представление о том, что вам следует введите параметры.
Короче говоря, вы можете использовать экземпляр Emote
или emote Unicode . Есть несколько способов получить Unicode у смайлика, например, Таблица Unicode Emoji .
Вы также можете использовать бота, находящегося на официальном JDA Discord Server : отправив следующее сообщение: %emote EMOJI
(замените EMOJI
фактическим смайликом), на которое ответит юникод Emote.
Обратите внимание, что бот предоставляет два разных UTF (UTF32
и UTF16
) в то время как в таблице указано только UTF32
, более рекомендуется использовать UTF16
. Пример:: smile: emote - \u1F604 UTF32 [\uD83D\uDE04] UTF16
.
Затем просто вставьте Unicode в виде строки в качестве параметра addReaction
. Убедитесь, что есть только один \
, а не два, поскольку в некоторых случаях среда IDE может автоматически добавлять escape-символ. Примеры правильного и неправильного использования:
ПРАВИЛЬНО - addReaction("\uD83D\uDE04").queue(); // reacts with :smile:
НЕПРАВИЛЬНО - addReaction("\\uD83D\\uDE04").queue(); // reacts with :smile:
ПРАВИЛЬНО - addReaction("U+1F604").queue(); //reacts with :smile:
ПРАВИЛЬНО - addReaction("\u1F604").queue(); // reacts with :smile: