import { Scenario, Message, Character } from './types'; // Palette - Updated for Lighter/Vibrant theme export const COLORS = { bg: '#2e1065', card: 'rgba(255,255,255,0.1)', primary: '#C084FC', // Lighter Purple secondary: '#F472B6', // Lighter Pink textMain: '#F8FAFC', textMuted: '#CBD5E1', }; // 使用 Bing Image Proxy 确保图片稳定加载且符合描述 // 参数: w=宽度, h=高度, c=7(Smart Crop), q=关键词 const getImg = (keyword: string) => `https://tse1.mm.bing.net/th?q=${encodeURIComponent(keyword)}&w=600&h=900&c=7&rs=1&p=0&dpr=2&pid=1.7&mkt=en-US&adlt=moderate`; const getCover = (keyword: string) => `https://tse1.mm.bing.net/th?q=${encodeURIComponent(keyword)}&w=400&h=600&c=7&rs=1&p=0&dpr=2&pid=1.7&mkt=en-US&adlt=moderate`; export const MOCK_CHARACTERS: Character[] = [ { id: 'c1', name: 'Eva-09', tagline: '私人仿生护理专员', // 关键词: 动漫女孩 白色比基尼 银发 温柔 avatar: getImg('anime girl white bikini silver hair gentle portrait masterpiece'), description: '专为高压人群设计的仿生人型号,擅长通过精准的触觉反馈缓解神经紧张。', tags: ['温顺', '医疗', '治愈'], compatibility: 98, status: 'online', }, { id: 'c2', name: 'Commander V', tagline: '深空舰队指挥官', // 关键词: 动漫女孩 黑色比基尼 军帽 强势 avatar: getImg('anime girl black bikini military cap domineering expression dark hair'), description: '性格强势,喜欢掌控一切。在连接中,你需要完全服从她的指令。', tags: ['强势', '指令', '调教'], compatibility: 85, status: 'online', }, { id: 'c3', name: 'Yuki (故障版)', tagline: '觉醒的虚拟偶像', // 关键词: 动漫女孩 粉色比基尼 赛博朋克 故障风 avatar: getImg('anime girl pink bikini cyberpunk neon colorful hair yandere'), description: '核心代码出现异常逻辑,表现出极强的占有欲和不可预测的信号波动。', tags: ['病娇', '不稳定', '高频'], compatibility: 92, status: 'busy', }, { id: 'c4', name: 'Secret X', tagline: '未知信号源', // 关键词: 动漫女孩 紫色比基尼 神秘 暗黑 avatar: getImg('anime girl purple micro bikini mysterious dark glowing eyes sexy'), description: '权限不足,请提升会员等级以解码该信号源。', tags: ['神秘', '极乐'], compatibility: 0, status: 'offline', isLocked: true, }, ]; export const MOCK_SCENARIOS: Scenario[] = [ { id: '1', title: '午夜办公室的加班', category: '职场', // 关键词: 动漫 办公室 夜晚 cover: getCover('anime girl office lady lingerie night city window'), duration: '12:30', intensity: 'Medium', isLocked: false, tags: ['沉浸', 'ASMR'], }, { id: '2', title: '私人医生的检查', category: '角色扮演', // 关键词: 动漫 护士 诊疗室 cover: getCover('anime nurse girl white bikini hospital room'), duration: '18:00', intensity: 'High', isLocked: true, tags: ['强互动', '语音'], }, { id: '3', title: '海边度假的偶遇', category: '邻家', // 关键词: 动漫 海滩 泳装 cover: getCover('anime girl blue bikini running beach ocean sunny'), duration: '25:00', intensity: 'Low', isLocked: false, tags: ['纯爱', '剧情'], }, { id: '4', title: '赛博仿生人测试', category: '科幻', // 关键词: 动漫 科幻 实验室 机械女 cover: getCover('anime cyborg girl metallic bikini sci-fi lab wires'), duration: '10:00', intensity: 'Extreme', isLocked: true, tags: ['硬核', '指令'], }, ]; export const INITIAL_MESSAGES: Message[] = [ { id: '1', text: '连接已建立,正在校准生物反馈信号...', sender: 'ai', type: 'text', timestamp: Date.now() - 100000, }, ];