diff --git a/helper.py b/helper.py index 23f2563..e0b2f6f 100644 --- a/helper.py +++ b/helper.py @@ -1,11 +1,16 @@ import discord +from discord import NotFound + import config def auto_delete(f): async def wrapper(*args, **kwargs): ret = await f(*args, **kwargs) - await kwargs["message"].delete() + try: + await kwargs["message"].delete() + except NotFound: + pass return ret return wrapper diff --git a/main.py b/main.py index 11668df..75ba359 100644 --- a/main.py +++ b/main.py @@ -47,7 +47,10 @@ async def join_event(*, guild: discord.Guild, channel: discord.TextChannel, **_): - event: int = number_emojis.index(reaction.emoji) + 1 + try: + event: int = number_emojis.index(reaction.emoji) + 1 + except ValueError: + return role: str = discord.utils.get(guild.roles, name=f"{config.PARTICIPANT_PREFIX}{event}") if role is None or role in member.roles: return diff --git a/nemo.py b/nemo.py index e93924d..99890be 100644 --- a/nemo.py +++ b/nemo.py @@ -53,7 +53,11 @@ class Nemo(discord.Client): await vote.remove(member) return try: - await handler[1](reaction=reaction, member=member, message=reaction.message, guild=reaction.message.guild, channel=reaction.message.channel) + await handler[1](reaction=reaction, + member=member, + message=reaction.message, + guild=reaction.message.guild, + channel=reaction.message.channel) except Exception: await reaction.message.channel.send(f"Fatal error: {traceback.format_exc()}") raise