Перемещение пользователя на голосовой канал автора сообщения - PullRequest
0 голосов
/ 01 мая 2019

Попытка заставить моего бота разногласия переместить пользователя на голосовой канал, на котором находится автор сообщения. Например. Я пишу !move @john Тогда бот переместит «Джон» на мой голосовой канал.

# command to move a user to current channel
@bot.command()
async def move(ctx,member:discord.Member=None):
    channel= discord.utils.get(ctx.guild.voice_channels)
    if not member:
        await ctx.send("Who am I trying to move? Use !move @user")
    await member.move_to(channel)

В данный момент он перемещает пользователей, но только на первый голосовой канал на сервере. Как мне заставить его переместить его на голосовой канал автора?

1 Ответ

0 голосов
/ 01 мая 2019

VoiceChannel, в котором находится автор, хранится в ctx.author.voice.channel.Примечательно, что .voice и .channel могут быть None, поэтому нам нужно проверить это

@bot.command()
async def move(ctx,member:discord.Member=None):
    if ctx.author.voice and ctx.author.voice.channel:
        channel = ctx.author.voice.channel
    else:
        await ctx.send("You are not connected to voice!")
    if not member:
        await ctx.send("Who am I trying to move? Use !move @user")
    await member.move_to(channel)
...