diff options
| author | Rapptz <[email protected]> | 2020-09-14 02:52:53 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2020-09-23 03:21:20 -0400 |
| commit | 23ae084b8cb3bb5c9d815b791c1a94b0cf53e516 (patch) | |
| tree | 2b50eb9d05bf3bb1d06d2d78d52fdca276e76e14 /discord/guild.py | |
| parent | Raise if member intent is not enabled (diff) | |
| download | discord.py-23ae084b8cb3bb5c9d815b791c1a94b0cf53e516.tar.xz discord.py-23ae084b8cb3bb5c9d815b791c1a94b0cf53e516.zip | |
Allow finer grained control over the member cache.
Diffstat (limited to 'discord/guild.py')
| -rw-r--r-- | discord/guild.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/discord/guild.py b/discord/guild.py index 2ab4afb2..4247f105 100644 --- a/discord/guild.py +++ b/discord/guild.py @@ -305,11 +305,12 @@ class Guild(Hashable): self._rules_channel_id = utils._get_as_snowflake(guild, 'rules_channel_id') self._public_updates_channel_id = utils._get_as_snowflake(guild, 'public_updates_channel_id') - cache_members = self._state._cache_members + cache_online_members = self._state._member_cache_flags.online + cache_joined = self._state._member_cache_flags.joined self_id = self._state.self_id for mdata in guild.get('members', []): member = Member(data=mdata, guild=self, state=state) - if cache_members or member.id == self_id: + if cache_joined or (cache_online_members and member.raw_status != 'offline') or member.id == self_id: self._add_member(member) self._sync(guild) |