Discord bot used to dab on /rheg/ shitposters
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

30 lines
1.3 KiB

# The bot depends on this patch to handle rate limits with the uploading of emoji
# There isn't a cleaner way to do this as of right now...
diff --git a/discord/guild.py b/discord/guild.py
index 6982356..d6cd907 100644
--- a/discord/guild.py
+++ b/discord/guild.py
@@ -1209,6 +1209,8 @@ class Guild(Hashable):
if roles:
roles = [role.id for role in roles]
data = await self._state.http.create_custom_emoji(self.id, name, img, roles=roles, reason=reason)
+ if isinstance(data, int):
+ return data
return self._state.store_emoji(self, data)
async def create_role(self, *, reason=None, **fields):
diff --git a/discord/http.py b/discord/http.py
index b103a7e..0c21f4c 100644
--- a/discord/http.py
+++ b/discord/http.py
@@ -183,6 +183,9 @@ class HTTPClient:
if r.status == 429:
fmt = 'We are being rate limited. Retrying in %.2f seconds. Handled under the bucket "%s"'
+ if bucket.endswith(":/guilds/{guild_id}/emojis"):
+ return data["retry_after"]
+
# sleep a bit
retry_after = data['retry_after'] / 1000.0
log.warning(fmt, retry_after, bucket)