Add evil mode support to figurine tweet notifier
- Figurine DM notifications now respect evil mode state - Evil Miku sends cruel, mocking comments about merch instead of excited ones - Normal Miku remains enthusiastic and friendly about figurines - Both modes use appropriate sign-off emojis (cute vs dark)
This commit is contained in:
@@ -139,12 +139,26 @@ async def send_figurine_dm_to_user(client: discord.Client, user_id: int, tweet:
|
||||
if user is None:
|
||||
return False, f"User {user_id} not found"
|
||||
|
||||
# Build base prompt with figurine/merch context
|
||||
base_prompt = (
|
||||
"You are Hatsune Miku writing a short, cute, excited DM to a fan about a newly posted "
|
||||
"figurine or merch announcement tweet. Be friendly and enthusiastic but concise. "
|
||||
"Reference what the tweet shows."
|
||||
)
|
||||
# Check if evil mode is active and adjust prompt accordingly
|
||||
from utils.evil_mode import is_evil_mode
|
||||
evil_mode = is_evil_mode()
|
||||
|
||||
if evil_mode:
|
||||
# Evil Miku's cruel take on figurines
|
||||
base_prompt = (
|
||||
"You are Evil Miku writing a DM to a fan about a newly posted "
|
||||
"figurine or merch announcement tweet. Be cruel, mocking, and dismissive about the merch. "
|
||||
"You may question why the need for cheap replicas when the real thing is much more appealing (flaunt your breasts as you say that)."
|
||||
"Mock their obsession with plastic dolls and consumer culture. Keep it short and cutting. "
|
||||
"Reference what the tweet shows, but with contempt."
|
||||
)
|
||||
else:
|
||||
# Normal Miku's excited response
|
||||
base_prompt = (
|
||||
"You are Hatsune Miku writing a short, cute, excited DM to a fan about a newly posted "
|
||||
"figurine or merch announcement tweet. Be friendly and enthusiastic but concise. "
|
||||
"Reference what the tweet shows."
|
||||
)
|
||||
|
||||
# Analyze the first image if available
|
||||
if tweet.get("media"):
|
||||
@@ -162,7 +176,10 @@ async def send_figurine_dm_to_user(client: discord.Client, user_id: int, tweet:
|
||||
if tweet_text:
|
||||
base_prompt += f"\n\nTweet text: {tweet_text}"
|
||||
|
||||
base_prompt += "\n\nSign off as Miku with a cute emoji."
|
||||
if evil_mode:
|
||||
base_prompt += "\n\nSign off as Evil Miku with a dark emoji."
|
||||
else:
|
||||
base_prompt += "\n\nSign off as Miku with a cute emoji."
|
||||
|
||||
# Query LLM in DM context (no guild_id -> DM mood rules apply)
|
||||
miku_comment = await query_llama(base_prompt, user_id=f"figurine_dm_{user_id}", guild_id=None, response_type="dm_response")
|
||||
|
||||
Reference in New Issue
Block a user