如何启用多个命令[重复]
Posted
技术标签:
【中文标题】如何启用多个命令[重复]【英文标题】:How to enable more than one command [duplicate] 【发布时间】:2019-12-17 16:12:52 【问题描述】:我对这种 discord.py 格式相当陌生,我似乎无法让两个命令工作。 例如,我有命令; “你好”和命令“有效”。每当我激活机器人时,它只会响应“有效”或“你好”,而不会同时响应。 有没有办法解决这个问题?
我尝试的很少,因为这个问题对我来说很新,我不知道如何解决它。
这是我用于命令的代码:
@client.event
async def on_message(message):
if message.content.startswith('!hello'):
messages= ["*tips hat* G'day ", "Yeehaw pardner, ", "Howdy, ", "Gutentag! "]
await client.send_message(message.channel, random.choice(messages) + message.author.mention)
@client.event
async def on_message(message):
if message.content.startswith('!valid'):
rannum = random.randint(0, 100)
await client.send_message(message.channel, (message.author.mention + " is",rannum,"% valid!"))
client.run(TOKEN)
发生这种情况时不会显示错误消息。在这种情况下,我将不胜感激!
【问题讨论】:
您需要将它们组合成一个on_message
事件
【参考方案1】:
就像@Patrick Haugh 提到的那样,您只能拥有on_message
事件中的1 个。
另外,您可能只需要其中一个事件。 因为on_message
定义了当您收到某人的消息时发生的事件。您可以只检查消息的内容是什么,并据此执行操作。
像这样:
@client.event
async def on_message(message):
if message.content.startswith('!valid'):
rannum = random.randint(0, 100)
await client.send_message(message.channel, (message.author.mention + " is",rannum,"% valid!"))
elif message.content.startswith('!hello'):
messages= ["*tips hat* G'day ", "Yeehaw pardner, ", "Howdy, ", "Gutentag! "]
await client.send_message(message.channel, random.choice(messages) + message.author.mention)
【讨论】:
非常感谢!对不起,如果这个问题看起来很愚蠢,这种格式是我不熟悉的。以上是关于如何启用多个命令[重复]的主要内容,如果未能解决你的问题,请参考以下文章
在 Node.js 中为多个域启用 Access-Control-Allow-Origin [重复]
如何为git启用多个用户名?即。具体项目可以有特定的用户名[重复]
在 ViewModel 中更新其绑定后,按钮未启用 [重复]