FRCDiscord / Dozer

Omnipotent guild management bot for FIRST Discord servers
GNU General Public License v3.0
40 stars 45 forks source link

Built In Emojis Don't Work For Starboard. #461

Closed silvanathecat closed 4 months ago

silvanathecat commented 8 months ago

Currently, running the command "&starboard config #starboard :star: 3" does not function, as Dozer seems to be unable to recognize the built in emojis in discord. It may just be me not using the emoji ID, but either way this is an oversight.

I know last time I looked at the code probably 8 months ago now the reason that it wasn't working was because the API call for the built in emojis had changed recently and wasn't reflected in that cog. This has since compounded with their move away from Twemojis creating yet another new API call. I have no clue if this is still the issue, however this was the issue last time.

silvanathecat commented 8 months ago

It seems this is due to an update in how Discord handles unicode emojis.

They used to all be treated as Discord Objects, but now only custom emojis are.

If you look at line 257 of starboard.py, you can see that while trying to define star_emoji, it calls discord.Emoji. This class only deals with Discord Objects, which unicode emojis are not anymore.

"might wanna make a wrapper class that constitutes something like this:

EmojiHandler Constrctor(discord.Emoji) Constructor(string) method equals(discord.Emoji) method equals(string) isEmoji() getID() getUnicode()" - @Trip-kun, 5183 Team Captain