-
Notifications
You must be signed in to change notification settings - Fork 112
Button Menu cannot react using emotes #98
Description
Issue
Issue Checklist
Please follow the following steps before opening this issue.
Issues that do not complete the checklist may be closed without any help.
- I have checked for similar issues on the issue tracker.
- I have updated to the latest version of JDA-Utilities.
- I have checked the branches or the maintainers' PRs for upcoming features/bug fixes.
The issue tracker is reserved for issues, errors, and feature requests related
to JDA-Utilities, and not questions and other requests for help.
- For examples, check out the examples module or the list
of JDA-Utilities projects.- For questions join the official JDA discord server and ask them
in our#jda-utilities
channel.- For general programming questions, visit StackOverflow.
Issue Information
Check all that apply:
- This is a bug report about an error, issue, or bug in JDA-Utilities.
- I have been able to consistently reproduce this bug.
- This is a feature request for the JDA-Utilities library.
This issue tracker does not assist or handle issues with the JDA library.
For JDA related issues, visit the JDA issue tracker
and open an issue there.
Description
Using the Button Menu, when adding a choice you cannot use an emote if you have the EMOTE CacheFlag disabled.
The following code results in the following stack trace:
menuBuilder.addChoice("emote id here");
net.dv8tion.jda.api.exceptions.ErrorResponseException: 10014: Unknown Emoji
at net.dv8tion.jda.api.exceptions.ErrorResponseException.create(ErrorResponseException.java:150)
at net.dv8tion.jda.api.requests.Request.onFailure(Request.java:102)
at net.dv8tion.jda.internal.requests.RestActionImpl.handleResponse(RestActionImpl.java:239)
at net.dv8tion.jda.api.requests.Request.handleResponse(Request.java:197)
[...]
You can workaround this by doing this (adding the emote name to the id):
menuBuilder.addChoice("a:"+"emote id here");
However, when the add reaction event is received and handled by the menu, it compares the emote ID with the internal menu list of choices, which has a:emote id
and not just the id, therefore the menu will never proceed