diff --git a/bot/bot.py b/bot/bot.py index 341a77e..53f99d4 100644 --- a/bot/bot.py +++ b/bot/bot.py @@ -136,6 +136,16 @@ async def on_ready(): # Save current avatar as fallback await profile_picture_manager.save_current_avatar_as_fallback() + # Set initial Discord presence based on current mood + try: + from utils.activities import update_bot_presence + if globals.EVIL_MODE: + await update_bot_presence(globals.EVIL_DM_MOOD, is_evil=True) + else: + await update_bot_presence(globals.DM_MOOD, is_evil=False) + except Exception as e: + logger.error(f"Failed to set initial presence: {e}") + # Start server-specific schedulers (includes DM mood rotation) server_manager.start_all_schedulers(globals.client) @@ -376,6 +386,13 @@ async def on_message(message): from utils.moods import update_server_nickname globals.client.loop.create_task(update_server_nickname(message.guild.id)) + # Update Discord presence to match new mood + try: + from utils.activities import update_bot_presence + await update_bot_presence(detected, is_evil=False) + except Exception as e: + logger.error(f"Failed to update presence after mood detection: {e}") + logger.info(f"🔄 Server mood auto-updated to: {detected}") if detected == "asleep":