所以我在另一个帖子上看到了几乎完全相同的问题,但我的问题不同。
我完全知道有一个Patreon机器人,但据我所知,这只在服务器上有效。
因此,假设有人邀请我的机器人,并尝试一个命令,要求他们成为一个赞助人。我用python编写的机器人如何检查它们是否已经成为我的产品的赞助人?然后相应地为他们设置一个角色。然后我可以对其进行检查,以允许他们访问该命令。
因此,从本质上讲,它应该做Patreon机器人所做的事情,然而它将自己工作。例如Dank Memer机器人:它可以被邀请到任何服务器,如果一个成为顾客可以使用特定的命令,否则你不能
我已经围绕这个话题看了一段时间了,还没有找到任何关于如何检查用户是否成为赞助人的信息。
首先要感谢大家!
发布于 2020-07-27 02:36:11
有一条出路,但可能不是正确的,所以,如果你知道你的顾客是谁,你也知道他们的不一致in,你可以在命令中声明一个If语句,如下所示-
@client.command()
async def your_command_name():
if member.id == #Your 1st Patreon's Discord ID:
#Your Code
elif member.id == #Your 2nd Patreon's Discord ID:
#Your code
else:
await ctx.send("You cannot use that command as you are not a patreon!")但是,如果你有很多顾客,或者你不知道他们不一致的if,这可能不是正确的方法,但无论如何,这是我唯一能想到的方法。我希望这能帮上忙。:)
发布于 2020-09-15 19:29:35
如果你认识顾客的话。只要给他们一个角色,赞助人或任何名字!在给他们这个角色之后。复制角色id并将其粘贴到patreons_role_id中
好的,这个命令的作用是,检查成员角色中的patreons角色!如果patreons角色存在!它将执行#your code,否则它将发送一条自定义消息!
@client.event()
async def on_message(message):
if message.content == '!test':
is_patreon = False
for user_roles in message.author.roles:
if user_roles.id == patreons_role_id:
is_patreon = True
break
if is_patreon == True:#your code
else: await message.channel.send('THIS COMMAND IS ONLY AVAILABLE FOR PATREON!')发布于 2020-11-17 18:13:06
让我们假设你有一个角色给你的顾客。
@client.command()
@commands.has_roles("PatreonRole")
async def commandname(ctx, args):
#do stuffhttps://stackoverflow.com/questions/63103958
复制相似问题