因此,我正在尝试制作一个机器人,如果用户直接向机器人发送消息,它将在用户和机器人都在的服务器中为他们提供一个角色。我尝试仅根据角色ID添加角色,但这不起作用。
下面是我所想的一个例子,这可能有助于更好地解释它。
role = (role ID)
member = message.author
await client.add_roles(member, role)
现在请记住,这将在直接消息中发生,而不是在服务器中,因为在服务器中这会更容易。
如果有人知道如何做到这一点或有任何想法,请让我知道。
谢谢
发布于 2018-08-08 10:05:04
在这里,我们记录ids,然后在收到命令时访问相应的对象。
target_server_id = "123..."
target_role_id = "456..."
@bot.command(pass_context=True)
async def gimmieRole(ctx):
if not ctx.message.channel.is_private:
await bot.say("Private command only")
server = await bot.get_Server(target_server_id)
role = discord.utils.get(server.roles, id=target_role_id)
member = server.get_member(ctx.message.author.id)
if member:
await bot.add_roles(member, role)
else:
await bot.say("You are not a member")
https://stackoverflow.com/questions/51737572
复制相似问题