Browse Source

use `_channel_factory` instead of manual checking in `Guild._sync`

pull/4126/head
NCPlayz 5 years ago
committed by Rapptz
parent
commit
40a4604604
  1. 12
      discord/guild.py

12
discord/guild.py

@ -320,15 +320,9 @@ class Guild(Hashable):
if 'channels' in data:
channels = data['channels']
for c in channels:
c_type = c['type']
if c_type in (ChannelType.text.value, ChannelType.news.value):
self._add_channel(TextChannel(guild=self, data=c, state=self._state))
elif c_type == ChannelType.voice.value:
self._add_channel(VoiceChannel(guild=self, data=c, state=self._state))
elif c_type == ChannelType.category.value:
self._add_channel(CategoryChannel(guild=self, data=c, state=self._state))
elif c_type == ChannelType.store.value:
self._add_channel(StoreChannel(guild=self, data=c, state=self._state))
factory, ch_type = _channel_factory(c['type'])
if factory:
self._add_channel(factory(guild=self, data=c, state=self._state))
@property
def channels(self):

Loading…
Cancel
Save