python-3.x Discord.py 识别on_message客户端事件,但IF语句没有响应

o7jaxewo  于 2023-04-08  发布在  Python
关注(0)|答案(1)|浏览(114)

我正在开发一个Discord机器人,在这种情况下,当任何用户给出“roll”命令时,机器人都希望滚动一个6面骰子。请参阅下面的代码。奇怪的是,这工作得很好,但现在print(worked)触发器和if p_message语句什么也不做。我没有得到任何错误,它就是不工作。

import discord
import random

intents = discord.Intents.all()
intents.message_content = True
client = discord.Client(intents=intents)

@client.event
async def on_message(message):
  p_message = message
  print("worked")

  if p_message == "roll":
    return str(random.randint(1, 6))

client.run('***') #my token

我试过确保message是一个str,但这没有什么区别。同样,这段代码以前工作过(在凌晨1点,我可能太累了,写不了代码),没有抛出任何错误。它只是不响应命令。

eblbsuwk

eblbsuwk1#

import discord
import random

# change .all to .default
intents = discord.Intents.default()
intents.message_content = True
client = discord.Client(intents=intents)

@client.event
async def on_message(message):
    # use message.content
    if message.content == "roll":
        # send message to the channel that someone types "roll"
        await message.channel.send(random.randint(1, 6))

client.run('***')  # my token

相关问题