Remove MemberCacheFlags.online
v8 no longer gives enough data for this to be possible
This commit is contained in:
parent
d85805ab6d
commit
7afcacc9a1
@ -875,17 +875,6 @@ class MemberCacheFlags(BaseFlags):
|
|||||||
def _empty(self):
|
def _empty(self):
|
||||||
return self.value == self.DEFAULT_VALUE
|
return self.value == self.DEFAULT_VALUE
|
||||||
|
|
||||||
@flag_value
|
|
||||||
def online(self):
|
|
||||||
""":class:`bool`: Whether to cache members with a status.
|
|
||||||
|
|
||||||
For example, members that are part of the initial ``GUILD_CREATE``
|
|
||||||
or become online at a later point. This requires :attr:`Intents.presences`.
|
|
||||||
|
|
||||||
Members that go offline are no longer cached.
|
|
||||||
"""
|
|
||||||
return 1
|
|
||||||
|
|
||||||
@flag_value
|
@flag_value
|
||||||
def voice(self):
|
def voice(self):
|
||||||
""":class:`bool`: Whether to cache members that are in voice.
|
""":class:`bool`: Whether to cache members that are in voice.
|
||||||
@ -894,7 +883,7 @@ class MemberCacheFlags(BaseFlags):
|
|||||||
|
|
||||||
Members that leave voice are no longer cached.
|
Members that leave voice are no longer cached.
|
||||||
"""
|
"""
|
||||||
return 2
|
return 1
|
||||||
|
|
||||||
@flag_value
|
@flag_value
|
||||||
def joined(self):
|
def joined(self):
|
||||||
@ -905,7 +894,7 @@ class MemberCacheFlags(BaseFlags):
|
|||||||
|
|
||||||
Members that leave the guild are no longer cached.
|
Members that leave the guild are no longer cached.
|
||||||
"""
|
"""
|
||||||
return 4
|
return 2
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def from_intents(cls: Type[MemberCacheFlags], intents: Intents) -> MemberCacheFlags:
|
def from_intents(cls: Type[MemberCacheFlags], intents: Intents) -> MemberCacheFlags:
|
||||||
@ -926,35 +915,18 @@ class MemberCacheFlags(BaseFlags):
|
|||||||
self = cls.none()
|
self = cls.none()
|
||||||
if intents.members:
|
if intents.members:
|
||||||
self.joined = True
|
self.joined = True
|
||||||
if intents.presences:
|
|
||||||
self.online = True
|
|
||||||
if intents.voice_states:
|
if intents.voice_states:
|
||||||
self.voice = True
|
self.voice = True
|
||||||
|
|
||||||
if not self.joined and self.online and self.voice:
|
|
||||||
self.voice = False
|
|
||||||
|
|
||||||
return self
|
return self
|
||||||
|
|
||||||
def _verify_intents(self, intents: Intents):
|
def _verify_intents(self, intents: Intents):
|
||||||
if self.online and not intents.presences:
|
|
||||||
raise ValueError('MemberCacheFlags.online requires Intents.presences enabled')
|
|
||||||
|
|
||||||
if self.voice and not intents.voice_states:
|
if self.voice and not intents.voice_states:
|
||||||
raise ValueError('MemberCacheFlags.voice requires Intents.voice_states')
|
raise ValueError('MemberCacheFlags.voice requires Intents.voice_states')
|
||||||
|
|
||||||
if self.joined and not intents.members:
|
if self.joined and not intents.members:
|
||||||
raise ValueError('MemberCacheFlags.joined requires Intents.members')
|
raise ValueError('MemberCacheFlags.joined requires Intents.members')
|
||||||
|
|
||||||
if not self.joined and self.voice and self.online:
|
|
||||||
msg = 'Setting both MemberCacheFlags.voice and MemberCacheFlags.online requires MemberCacheFlags.joined ' \
|
|
||||||
'to properly evict members from the cache.'
|
|
||||||
raise ValueError(msg)
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def _voice_only(self):
|
def _voice_only(self):
|
||||||
return self.value == 2
|
|
||||||
|
|
||||||
@property
|
|
||||||
def _online_only(self):
|
|
||||||
return self.value == 1
|
return self.value == 1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user