import discord import os from modules.base import BaseModule from client import client, MODULES, tree from modules import gitea token = os.getenv("DISCORD_TOKEN", "NO_TOKEN") client.riddles = [] client.answers = [] client.rhyme_keys = {} client.rhyme_strings = {} client.cooldown = {} client.ongoing_riddles = {} client.modules: list[BaseModule] = [] @client.event async def on_ready(): client.modules = [m(client) for m in MODULES] await tree.sync(guild=discord.Object(id=gitea.GUILD_ID)) for m in client.modules: await m.load() print(f"Logged in as {client.user}") @client.event async def on_message(message): # don't answer to self if ( message.author == client.user and message.channel in client.ongoing_riddles ): # need to move a part of that block in FourasModule current_riddle = client.ongoing_riddles[message.channel] if "message" not in current_riddle: current_riddle["message"] = message return if isinstance( message.channel, (discord.DMChannel, discord.TextChannel, discord.Thread) ): handled = False for m in client.modules: if not handled: handled = await m.handle_message(message) # Initialise le client client.run(token)