Код:
@commands.command(name="create-rr")
async def crr(self, ctx, typ=None):
if not typ:
await ctx.reply(embed=discord.Embed(title="Список РР(Роли Реакций)",description="`1` - Знаки зодиака\n`2` - Цвета\n`3` - Страна проживания"))
if typ == "1":
awaiter = await ctx.reply("Подождите... Провожу операции")
guild = ctx.guild
first = discord.utils.get(guild.roles, name="Близнецы")
if not first:
first = await guild.create_role(name="Близнецы")
second = discord.utils.get(guild.roles, name="Рыбы")
if not second:
second = await guild.create_role(name="Рыбы")
third = discord.utils.get(guild.roles, name="Дева")
if not third:
third = await guild.create_role(name="Дева")
fourth = discord.utils.get(guild.roles, name="Стрелец")
if not fourth:
fourth = await guild.create_role(name="Стрелец")
with open(f"{ctx.guild.id} zz message", "w") as file:
file.write(f"{awaiter.id}")
await awaiter.edit(embed=discord.Embed(title="Знаки зодиака(Не все т.к. бета версия)",description="1️⃣ - Близнецы\n2️⃣ - Рыбы\n3️⃣ - Дева\n4️⃣ - Стрелец"))
await awaiter.add_reaction("1️⃣")
await awaiter.add_reaction("2️⃣")
await awaiter.add_reaction("3️⃣")
await awaiter.add_reaction("4️⃣")
@commands.Cog.listener()
async def on_raw_reaction(self, message, emoji):
with open(f"{message.guild.id} zz message", "r") as file:
real_id = file.read()
if message.id == real_id:
if emoji == "1️⃣":
role = discord.utils.get(message.guild.roles, name="Близнецы")
await message.author.add_roles(role)
elif emoji == "2️⃣":
role = discord.utils.get(message.guild.roles, name="Рыбы")
await message.author.add_roles(role)
elif emoji == "3️⃣":
role = discord.utils.get(message.guild.roles, name="Дева")
await message.author.add_roles(role)
elif emoji == "4️⃣":
role = discord.utils.get(message.guild.roles, name="Стрелец")
await message.author.add_roles(role)
Запустил, вызвал команду:
Но на скрине видно что я перетыкал все реакций, но ролей у меня не появилось, в консоли ошибок тоже нет. В чём моя ошибка?