1 回答
TA贡献1873条经验 获得超9个赞
您有 2 个名为:“on_voice_state_update”的“def”,因此当此事件发生时,机器人不知道他必须调用哪一个。删除 2 个“def”之一,并仅在一个名为“on_voice_state_update”的“def”中执行您想要的操作。
@client.event
async def on_voice_state_update(member, before, after):
if before.channel is None and after.channel is not None:
if after.channel.id == [""Channel ID 1""] or after.channel.id == [""Channel ID 2""]:
await client.change_presence(status=discord.Status.online, activity=discord.Activity(type=discord.ActivityType.listening, name="users | Ready to mute"))
print("Bot done0")
print(member, "joined")
elif before.channel is not None and after.channel is None:
if before.channel.id == [""Channel ID 1""] or before.channel.id == [""Channel ID 2""]:
await client.change_presence(status=discord.Status.offline)
print("Bot done1")
print(member, "left")
添加回答
举报