Игра на pygame зависает во время запуска телеграмм-бота aiogram

Давайте я обрисую проблему подробнее. У меня есть небольшой проект на pygame, в котором взаимодействие с игроками происходит через хоста и телеграмм. Допустим, есть какой-то хост, который транслирует свой экран с игрой, и игроки, которые присоединяются к этому хосту через бота.

Я решил сделать это с помощью библиотеки aiogram, но игра намертво зависает во время активации бота. Я понимаю, что это из-за того, что он ждет каких-то действий (например, ввода команд). Однако я не понимаю, как сделать так, чтобы бот ожидал действия пользователя в фоновом режиме. Я пробовал использовать многопоточность, асинхронность, изменял место вызова функции, активирующей бота, но ничего не помогло.

Приведу фрагменты кода:

# часть main.py
def intro():
    global code
    for i in range(4):
        number = random.randint(65, 90)
        code += chr(number)
    code_on_screen = font.render(f'Код для входа в игру: {code}', True, BLACK)
    sign_about_connected_users = font.render("Присоединившиеся игроки: ", True, BLACK)
    connected_users = []
    screen.blit(sign_about_connected_users, (WIDTH - 700, (HEIGHT - 40) / 6))
    screen.blit(code_on_screen, (100, (HEIGHT - 40) / 2))

    pygame.display.update()
    executor.start_polling(dp, skip_updates=True)
# часть main.py с ботом
bot = Bot(config.token)
dp = Dispatcher(bot)

@dp.message_handler(commands="start")
async def start_message(message: types.Message):
    await message.reply("Чтобы присоединиться к игре, введите код")

async def waiting_for_code(message: types.Message):
    while message.text != code:
        if message.text == code:
            print("Ожидайте начала игры")
        else:
            print("Код неверный. Попробуйте ещё раз.")

Ответы (0 шт):