From af5292872bc2943d4721bd3e43d13a926c1e7b08 Mon Sep 17 00:00:00 2001 From: Rapptz Date: Wed, 26 Aug 2015 22:06:24 -0400 Subject: [PATCH] Parse roles in the member building. --- discord/__init__.py | 4 ++-- discord/client.py | 10 +++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/discord/__init__.py b/discord/__init__.py index 3ff193dd1..98cae9523 100644 --- a/discord/__init__.py +++ b/discord/__init__.py @@ -15,8 +15,8 @@ __title__ = 'discord' __author__ = 'Rapptz' __license__ = 'MIT' __copyright__ = 'Copyright 2015 Rapptz' -__version__ = '0.3.0' -__build__ = 0x003000 +__version__ = '0.3.1' +__build__ = 0x003010 from client import Client from user import User diff --git a/discord/client.py b/discord/client.py index f3d12b078..b9d0350e7 100644 --- a/discord/client.py +++ b/discord/client.py @@ -149,7 +149,15 @@ class Client(object): for guild in guilds: guild['roles'] = [Role(**role) for role in guild['roles']] - guild['members'] = [Member(**member) for member in guild['members']] + # guild['members'] = [Member(**member) for member in guild['members']] + members = guild['members'] + for i, member in enumerate(members): + roles = member['roles'] + for j, roleid in enumerate(roles): + role = next((r for r in guild['roles'] if r.id == roleid), None) + if role is not None: + roles[j] = role + members[i] = Member(**member) server = Server(**guild) for channel in guild['channels']: