Keep getting an error for the reaction_remove, just copy-pasted my whole code(minus the client id) cause it might help, I have no idea what's wrong as the first half works perfectly fine.
另外,尝试添加
“如果成员不是 None:
等待成员.remove_roles(角色)
别的:
打印(错误)”
在最后,每次我尝试删除角色时,它都会给我错误,以防万一它有帮助。
import discord
client = discord.Client()
@client.event
async def on_ready():
print('We have logged in as {0.user}'.format(client))
@client.event
async def on_raw_reaction_add(payload):
message_id = payload.message_id
if message_id == 806406876593127464:
guild_id = payload.guild_id
guild = discord.utils.find(lambda g : g.id == guild_id, client.guilds)
if payload.emoji.name == "049":
role = discord.utils.get(guild.roles, name = 'SCP-049')
elif payload.emoji.name == "0492":
role = discord.utils.get(guild.roles, name = 'SCP-049-2')
elif payload.emoji.name == "096":
role = discord.utils.get(guild.roles, name = 'SCP-096')
elif payload.emoji.name == "106":
role = discord.utils.get(guild.roles, name = 'SCP-106')
elif payload.emoji.name == "173":
role = discord.utils.get(guild.roles, name = 'SCP-173')
elif payload.emoji.name == "682":
role = discord.utils.get(guild.roles, name = 'SCP-682')
elif payload.emoji.name == "939":
role = discord.utils.get(guild.roles, name = 'SCP-939')
elif payload.emoji.name == "999":
role = discord.utils.get(guild.roles, name = 'SCP-999')
elif payload.emoji.name == "Chaos":
role = discord.utils.get(guild.roles, name = 'Chaos Insurgency')
elif payload.emoji.name == "DClass":
role = discord.utils.get(guild.roles, name = 'D-Class')
elif payload.emoji.name == "MTF":
role = discord.utils.get(guild.roles, name = 'MTF')
elif payload.emoji.name == "Scientist":
role = discord.utils.get(guild.roles, name = 'Scientist')
member = payload.member
await member.add_roles(role)
@client.event
async def on_raw_reaction_remove(payload):
message_id = payload.message_id
if message_id == 806406876593127464:
guild_id = payload.guild_id
guild = discord.utils.find(lambda g : g.id == guild_id, client.guilds)
if payload.emoji.name == "049":
role = discord.utils.get(guild.roles, name = 'SCP-049')
elif payload.emoji.name == "0492":
role = discord.utils.get(guild.roles, name = 'SCP-049-2')
elif payload.emoji.name == "096":
role = discord.utils.get(guild.roles, name = 'SCP-096')
elif payload.emoji.name == "106":
role = discord.utils.get(guild.roles, name = 'SCP-106')
elif payload.emoji.name == "173":
role = discord.utils.get(guild.roles, name = 'SCP-173')
elif payload.emoji.name == "682":
role = discord.utils.get(guild.roles, name = 'SCP-682')
elif payload.emoji.name == "939":
role = discord.utils.get(guild.roles, name = 'SCP-939')
elif payload.emoji.name == "999":
role = discord.utils.get(guild.roles, name = 'SCP-999')
elif payload.emoji.name == "Chaos":
role = discord.utils.get(guild.roles, name = 'Chaos Insurgency')
elif payload.emoji.name == "DClass":
role = discord.utils.get(guild.roles, name = 'D-Class')
elif payload.emoji.name == "MTF":
role = discord.utils.get(guild.roles, name = 'MTF')
elif payload.emoji.name == "Scientist":
role = discord.utils.get(guild.roles, name = 'Scientist')
member = payload.member
await member.remove_roles(role)
client.run()
添加反应后它能够为我提供一个角色,但在删除该反应后无法删除该角色here https://i.stack.imgur.com/mxRdX.jpg