From 1e7a5c9b8a03653d9fcbd5f18cefdb62fde4ae74 Mon Sep 17 00:00:00 2001 From: Interitio Date: Tue, 3 Dec 2024 08:43:03 +1000 Subject: [PATCH] fix(tasklist): Add profile migrator. --- src/modules/tasklist/cog.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/modules/tasklist/cog.py b/src/modules/tasklist/cog.py index 470b131e..6896d6af 100644 --- a/src/modules/tasklist/cog.py +++ b/src/modules/tasklist/cog.py @@ -9,6 +9,7 @@ from discord.app_commands.transformers import AppCommandOptionType as cmdopt from data.queries import JOINTYPE from meta import LionBot, LionCog, LionContext +from meta.CrocBot import CrocBot from meta.logger import log_wrap from meta.errors import UserInputError from modules.profiles.profile import UserProfile @@ -128,6 +129,7 @@ class TasklistCog(LionCog): def __init__(self, bot: LionBot): self.bot = bot + self.crocbot: CrocBot = bot.crocbot self.data = bot.db.load_registry(TasklistData()) self.babel = babel self.settings = TasklistSettings() @@ -140,9 +142,19 @@ class TasklistCog(LionCog): self.bot.core.guild_config.register_model_setting(self.settings.task_reward_limit) self.bot.add_view(TasklistCaller(self.bot)) + self.bot.profiles.add_profile_migrator(self.migrate_profiles, name='tasklist-migrator') + configcog = self.bot.get_cog('ConfigCog') self.crossload_group(self.configure_group, configcog.config_group) + self._load_twitch_methods(self.crocbot) + + async def cog_unload(self): + self.live_tasklists.clear() + if profiles := self.bot.get_cog('ProfileCog'): + profiles.del_profile_migrator('tasklist-migrator') + self._unload_twitch_methods(self.crocbot) + @log_wrap(action="Tasklist Profile Migration") async def migrate_profiles(self, source_profile: UserProfile, target_profile: UserProfile): """