def guildtree(self, ctx, *ids: str):
"""List the guilds I am in (tree version).
Usage: guildtree"""
echeck_perms(ctx, ('bot_owner',))
pager = commands.Paginator(prefix='```diff')
guilds: List[discord.Guild]
if ids:
s_map = {i.id: i for i in self.bot.guilds}
for sid in ids:
with assert_msg(ctx, '**ID** `%s` **is invalid. (must be 18 numbers)**' % sid):
check(len(sid) == 18)
try:
guilds.append(s_map[sid])
except KeyError:
await ctx.send('guild ID **%s** not found.' % sid)
return False
else:
guilds = self.bot.guilds
for guild in guilds:
pager.add_line('+ ' + guild.name + ' [{0} members] [ID {1}]'.format(str(len(guild.members)), guild.id))
for channel in guild.channels:
xname = channel.name
if str(channel.type) == 'voice':
xname = '[voice] ' + xname
pager.add_line(' • ' + xname)
for page in pager.pages:
await ctx.send(page)
评论列表
文章目录