如何将特定的人转移到特定的VC上

问题描述 投票:0回答:1

我正在努力让它在你输入命令的时候能立刻移动我,现在你必须在discord上@我。

@commands.command(name='movejohan', aliases=['mj', 'MJ'])
async def MoveJ(self, message, member: discord.Member = None):
    """Moves Johan to xxxxx"""
    channel = bot.get_channel(xxxxxxxxxx)
    await member.move_to(channel, reason='Moved By {}'.format(message.author))

这是我有的,我不知道怎么做才能让我特别感动,我就想改一下 member: discord.Member = Nonemember: discord.Member = bot.get_user(xxxxxxxx)但这并不奏效,有什么办法吗?

python discord.py discord.py-rewrite
1个回答
2
投票

你在使用的方式上没有任何问题。member: discord.Member = None 争论。

我建议采用这样的方式。

@commands.command(name='movejohan', aliases=['mj', 'MJ'])
async def MoveJ(self, message, member: discord.Member = None):
    """Moves Johan to xxxxx"""
    if not member:
        member = discord.utils.get(message.guild.members, id=xxxxxxxx) # put your user ID here!
        # As Fin mentioned, you can also use message.guild.get_member(userID)
    channel = self.bot.get_channel(xxxxxxxxxx)
    await member.move_to(channel, reason='Moved By {}'.format(message.author))

当你输入成员参数时 你可以使用成员的任何属性 -- 你可以使用他们的用户ID,显示名称,用户名,你不需要明确提到他们。


2
投票

你要指定从哪个公会获取成员,这可以使用上下文来完成。

@commands.command(name='movejohan', aliases=['mj', 'MJ'])
async def MoveJ(self, message):
    """Moves Johan to xxxxx"""
    channel = self.bot.get_channel(xxxxx)
    johan = message.guild.get_member(xxxxx)
    await johan.move_to(channel, reason='Moved by {}'.format(message.author))
© www.soinside.com 2019 - 2024. All rights reserved.