diff options
| author | Rapptz <[email protected]> | 2016-04-29 22:43:54 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2016-04-29 22:44:25 -0400 |
| commit | 5e8c79bf764b7568fc580370ad60cb7ae9b83c19 (patch) | |
| tree | ba7152a5e5dd433d4a01d9aee569b8da2b2242ad | |
| parent | Remove setting read-only __doc__ in Member overrides. (diff) | |
| download | discord.py-5e8c79bf764b7568fc580370ad60cb7ae9b83c19.tar.xz discord.py-5e8c79bf764b7568fc580370ad60cb7ae9b83c19.zip | |
Attempt to consistently sort of all Member.roles
| -rw-r--r-- | discord/state.py | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/discord/state.py b/discord/state.py index 08fb947d..64be587f 100644 --- a/discord/state.py +++ b/discord/state.py @@ -286,7 +286,7 @@ class ConnectionState: if role is not None: roles.append(role) - data['roles'] = roles + data['roles'] = sorted(roles, key=lambda r: int(r.id)) return Member(server=server, **data) def parse_guild_member_add(self, data): @@ -324,14 +324,13 @@ class ConnectionState: member.nick = data['nick'] # update the roles - member.roles = [] + member.roles = [server.default_role] for role in server.roles: if role.id in data['roles']: member.roles.append(role) # sort the roles by ID since they can be "randomised" - member.roles.sort(key=lambda r: r.id) - member.roles.insert(0, server.default_role) + member.roles.sort(key=lambda r: int(r.id)) self.dispatch('member_update', old_member, member) def _get_create_server(self, data): |