【发布时间】:2020-03-24 04:33:59
【问题描述】:
import discord
from discord.ext.commands import Bot
from discord.ext import commands
import asyncio
import time
import random
from PIL import Image
Client = discord.Client()
client = commands.Bot(command_prefix = "-")`
@client.command
async def spam(ctx, arg):
count = 0
await Context.send(message.channel, "Wait for it....")
time.sleep(3)
while count < 20:
await ctx.send(arg)
time.sleep(3)
count = count + 1
这段代码应该提到参数中指定的人。例如,如果有人输入-spam @Bob,机器人应该说
@Bob
@Bob 20 times
【问题讨论】:
-
那么问题出在哪里?你的程序的实际结果是什么?我猜该命令触发正确,但您的机器人的响应不是。您只是将 play 参数发回。如果您想提及用户,请使用提及权。一个例子可以在这里找到stackoverflow.com/questions/51905563/…
-
我的问题是它实际上并没有打印任何东西,包括“等待它......”
-
您确定您的机器人正在运行吗?您的代码缺少
client.run('token')之类的东西,它会启动机器人。此外,您还没有定义Context,但您使用它。也许这应该是ctx?你使用的是哪个版本的discord.py? -
哦,是的,它正在运行,我忘了添加它,但在我的实际代码中它就在那里。其他一切正常,只是这个命令有点粗略。
标签: python discord.py