member
The member who added the reaction. Only available if event_type is REACTION_ADD and the reaction is inside a guild.
#подразумевается, что этот код - часть cog-класса для бота.
def __init__(self):
#создаём подключение к БД сами...
#возможно, его стоит передавать в параметрах конструктора нашего сog?
self.db = aiosqlite.connect('mydatabase.sqlite')
@tasks.loop(seconds=60) #выполняем эту функцию каждые 60 секунд
async def countdown_processor(self):
#тупо уменьшаем значение счётчика для всех пользователей
#но (для примера) с ограничением до нуля
cursor = await self.db.execute("UPDATE user_counters SET counter = counter - 1 WHERE counter > 0")
await cursor.close() #так как это не select-запрос, нам курсор без надобности.
#всё, больше ничего не требуется!
#так как вызов асинхронный, бот может заниматься другими делами, пока запрос выполняется
А так, я написал. Разбей код обработки достижений на отдельные обработчики, вынеси всё в отдельную подсистему твоего бота. По-крайней мере будет сложнее запутаться.