Screw properties, direct injection baby!

This commit is contained in:
AllfatherHatt 2025-03-15 18:12:57 +01:00
parent cdb5d20fa9
commit 3bf7d221a0
2 changed files with 6 additions and 14 deletions

View File

@ -11,12 +11,8 @@ from openai import OpenAIError
class MemoryMixin:
"""Handles all memory-related functions for Reginald."""
@property
def config(self):
"""Dynamically fetches the config from the parent cog."""
return self._config # This assumes `ReginaldCog` sets `self._config`
def __init__(self):
def __init__(self, config: Config):
self.config = config # Now explicitly set
self.short_term_memory_limit = 100
self.summary_retention_limit = 25
self.summary_retention_ratio = 0.8

View File

@ -17,14 +17,7 @@ class ReginaldCog(commands.Cog, PermissionsMixin, BlacklistMixin, MemoryMixin):
self.bot = bot
self.config = Config.get_conf(self, identifier=71717171171717)
self._config = self.config # ✅ Ensure MemoryMixin sees this before calling super
super().__init__() # ✅ Now it's safe to initialize parent classes
self.default_listening_channel = 1085649787388428370
self.memory_locks = {}
# ✅ Properly Registered Configuration Keys
# Properly Registered Configuration Keys
default_global = {"openai_model": "gpt-4o-mini"}
default_guild = {
"openai_api_key": None,
@ -39,6 +32,9 @@ class ReginaldCog(commands.Cog, PermissionsMixin, BlacklistMixin, MemoryMixin):
self.config.register_global(**default_global)
self.config.register_guild(**default_guild)
# Pass config explicitly to MemoryMixin
MemoryMixin.__init__(self, self.config)
async def is_admin(self, ctx):
admin_role_id = await self.config.guild(ctx.guild).admin_role()
if admin_role_id: