diff --git a/apps/bym.js b/apps/bym.js index 78b805bd..f525feb2 100644 --- a/apps/bym.js +++ b/apps/bym.js @@ -5,9 +5,6 @@ import { customSplitRegex, filterResponseChunk } from '../utils/text.js' import core, { roleMap } from '../model/core.js' import { formatDate } from '../utils/common.js' -/** 使机器人可以对其第一人称回应 */ -const reg_chatgpt_for_firstperson_call = Config.enableBYM ? Config.assistantLabel : `Chatgpt-plugin-bot-name-${Math.floor(10000 + Math.random() * 90000)}`; - export class bym extends plugin { constructor() { super({ @@ -18,7 +15,6 @@ export class bym extends plugin { priority: 5000, rule: [ { - reg: reg_chatgpt_for_firstperson_call, fnc: 'bym', priority: '-1000000', log: false diff --git a/apps/tts_voice_help.js b/apps/tts_voice_help.js index c9652f68..923e3928 100644 --- a/apps/tts_voice_help.js +++ b/apps/tts_voice_help.js @@ -146,9 +146,8 @@ export class voicechangehelp extends plugin { permission: 'master' }, { - reg: /^#(chat)?gpt偷(图|表情包?)$/i, + reg: /^#偷(图|表情包?)$/i, fnc: 'save_EmojiImg', - permission: 'master' }, { reg: /^#(chat)?gptsf语音模型(创建|删除|列表|上传|新增)$/i, @@ -478,8 +477,34 @@ export class voicechangehelp extends plugin { } } - /** /^#(chat)?gpt偷(图|表情包?)$/i */ + async checkStealImgWhitelist(e) { + let whitelist = Config.stealImgWhitelist || []; + if (typeof whitelist === 'string') { + whitelist = whitelist.length > 0 ? whitelist.split(',').map(item => item.trim()) : []; + } + if (whitelist.length === 0) return true; + if (e.isMaster) return true; + + const userId = e.sender?.user_id?.toString() || ''; + const groupId = e.isGroup && e.group_id ? e.group_id.toString() : ''; + for (const item of whitelist) { + if (!item) continue; + if (item.startsWith('^')) { + if (item.slice(1) === userId) return true; + } else if (item.includes('^')) { + const [g, q] = item.split('^'); + if (e.isGroup && g === groupId && q === userId) return true; + } else if (e.isGroup && item === groupId) { + return true; + } + } + e.reply('你没有使用该指令的权限', true); + return false; + } + + /** /^#偷(图|表情包?)$/i */ async save_EmojiImg(e) { + if (!await this.checkStealImgWhitelist(e)) return false; await parseSourceImg(e); if (!e.img || !e.img.length) { e.reply(`请引用图片或将图片一起发送后重试`, true); @@ -517,8 +542,11 @@ export class voicechangehelp extends plugin { } if (!emotions.includes(emotion)) { - e.reply('未能确定该表情包类别\nError: ' + aiText, true); - return true; + // Gemini 在部分地区会返回 FAILED_PRECONDITION / User location is not supported。 + // 偷表情不应该因此失败:识别失败时兜底保存到 cute 分类。 + logger.warn(`[偷表情] 表情类别识别失败,已使用默认分类 cute:${aiText || '无返回'}`); + emotion = 'cute'; + analysis = '识别失败,默认分类'; } const directory = path.join(process.cwd(), 'data', 'chatgpt', 'sendEmojiTool', emotion); diff --git "a/apps/\346\264\276\350\222\231meme.js" "b/apps/\346\264\276\350\222\231meme.js" index 1765235d..cbc372af 100644 --- "a/apps/\346\264\276\350\222\231meme.js" +++ "b/apps/\346\264\276\350\222\231meme.js" @@ -21,10 +21,6 @@ const baseUrl = Config.meme_baseUrl * @type {boolean} */ const reply = Config.meme_reply -/** - * 是否强制使用#触发命令 - */ -const forceSharp = Config.meme_forceSharp /** * 主人保护,撅主人时会被反撅 (暂时只支持QQ) * @type {boolean} @@ -50,6 +46,10 @@ let protectList = ['lash', 'do', 'beat_up', 'little_do', 'fast_do', 'qi', 'fast_ */ const MEME_USAGE_REDIS_PREFIX = 'Yz:paimon_meme_usage:' +function escapeRegExp(str = '') { + return String(str).replace(/[.*+?^${}()|[\]\\]/g, '\\$&') +} + export class memes extends plugin { constructor() { let option = { @@ -60,7 +60,7 @@ export class memes extends plugin { /** https://oicqjs.github.io/oicq/#events */ event: 'message', /** 优先级,数字越小等级越高 */ - priority: 5000, + priority: 1000, rule: [ { /** 命令正则匹配 */ @@ -98,7 +98,7 @@ export class memes extends plugin { } Object.keys(keyMap).forEach(key => { - let reg = forceSharp ? `^#${key}` : `^#?${key}` + let reg = `^\\s*#?${escapeRegExp(key)}` option.rule.push({ /** 命令正则匹配 */ reg, @@ -179,7 +179,7 @@ export class memes extends plugin { } let rules = [] Object.keys(keyMap).forEach(key => { - let reg = forceSharp ? `^#${key}` : `^#?${key}` + let reg = `^\\s*#?${escapeRegExp(key)}` rules.push({ /** 命令正则匹配 */ reg, @@ -366,6 +366,7 @@ export class memes extends plugin { */ async memes(e) { if (Config.meme_turnOff) return false; + if (Config.meme_forceSharp && !String(e.msg || '').trimStart().startsWith('#')) return false; // meme响应CD let lastTime = await redis.get(`Yz:paimon_meme_cd:${e.group_id}:${e.sender.user_id || e.user_id}`); @@ -396,7 +397,10 @@ export class memes extends plugin { // 替换原有的硬编码匹配逻辑 let target = findLongestMatchingKey(msg, keyMap); + if (!target) return false let targetCode = keyMap[target] + let info = infos[targetCode] + if (!info?.params_type) return false // let target = e.msg.replace(/^#?meme(s)?/, '') let text1 = _.trimStart(e.msg, '#').replace(target, '') if (text1.trim() === '详情' || text1.trim() === '帮助') { @@ -406,7 +410,6 @@ export class memes extends plugin { let [text, args = ''] = text1.split('#') let formData = new FormData() - let info = infos[targetCode] let fileLoc // 提取 @ 信息并获取用户详情缓存 diff --git "a/apps/\346\264\276\350\222\231\346\210\263\344\270\200\346\210\263.js" "b/apps/\346\264\276\350\222\231\346\210\263\344\270\200\346\210\263.js" index 0999413d..e754cc55 100644 --- "a/apps/\346\264\276\350\222\231\346\210\263\344\270\200\346\210\263.js" +++ "b/apps/\346\264\276\350\222\231\346\210\263\344\270\200\346\210\263.js" @@ -1,4 +1,4 @@ -import plugin from '../../../lib/plugins/plugin.js'; +import plugin from '../../../lib/plugins/plugin.js'; import cfg from '../../../lib/config/config.js' import common from '../../../lib/common/common.js' import moment from 'moment' @@ -15,9 +15,11 @@ import { generateAudio, getUin, getUserReplySetting, + makeForwardMsg } from '../utils/common.js' import fs from 'fs' import sharp from 'sharp' +import { getComplaint } from '../models/fadian.js' // 如使用非icqq请在此处填写机器人QQ号 let BotQQ = '' @@ -34,16 +36,23 @@ redis.del(`Yz:PaimongChuoLocalPicIndex`); if (!fs.existsSync(paimonChuoYiChouPicturesDirectory)) fs.mkdirSync(paimonChuoYiChouPicturesDirectory, { recursive: true }); if (!fs.existsSync(paimonChuoYiChouSavePicDirectory)) fs.mkdirSync(paimonChuoYiChouSavePicDirectory, { recursive: true }); + export class PaimonChuo extends plugin { constructor() { super({ name: '派蒙戳一戳', dsc: '戳一戳机器人触发效果', - event: 'notice.group.poke', + event: '*', priority: 1000, rule: [ { fnc: 'chuoyichuo', + event: 'notice.group.poke', + log: false + }, + { + fnc: 'atTrigger', + event: 'message.*', log: false } ] @@ -76,16 +85,17 @@ export class PaimonChuo extends plugin { if (cfg.masterQQ.includes(e.operator_id) || cfg.qq == e.operator_id || BotQQ == e.operator_id) { return; } + let fmts = Config.paimon_chou_formats || {} let mutetype = Math.ceil(Math.random() * 3) switch (mutetype) { case 1: - await e.reply(`呜呜,有什么开心不开心的都冲${Config.tts_First_person}来吧QAQ`, true) + await e.reply((fmts.mute_fallback1 || "呜呜,有什么开心不开心的都冲{name}来吧QAQ").replace(/\{name\}/g, Config.tts_First_person), true) break; case 2: - await e.reply(`请戳${Config.tts_First_person}吧,${Config.tts_First_person}...${Config.tts_First_person}什么都愿意做QAQ`, true) + await e.reply((fmts.mute_fallback2 || "请戳{name}吧,{name}...{name}什么都愿意做QAQ").replace(/\{name\}/g, Config.tts_First_person), true) break; case 3: - await e.reply(`呜呜呜,${Config.tts_First_person}愿意为你做任何事情`, true) + await e.reply((fmts.mute_fallback3 || "呜呜呜,{name}愿意为你做任何事情").replace(/\{name\}/g, Config.tts_First_person), true) break; } await common.sleep(1000); @@ -124,7 +134,7 @@ export class PaimonChuo extends plugin { if (Config.debug) { logger.mark('[戳一戳回复随机文字生效]') } - this.send_randow_text_msg(e) + await this.send_randow_text_msg(e) } /**回复随机图片 */ @@ -132,6 +142,7 @@ export class PaimonChuo extends plugin { if (Config.debug) { logger.mark('[戳一戳回复随机图片生效]') } + let fmts = Config.paimon_chou_formats || {} let mutetype if (Config.paimon_chou_IsUseLoliconApi) mutetype = Math.ceil(Math.random() * 5) else mutetype = Math.ceil(Math.random() * 3) @@ -139,27 +150,27 @@ export class PaimonChuo extends plugin { switch (mutetype) { case 1: url = getRandomUrl("ecywebp"); - await e.reply(`喵>_< ${Config.tts_First_person}有点开心,这是${Config.tts_First_person}私藏的画片哦`) + await e.reply((fmts.img_reply1 || "喵>_< {name}有点开心,这是{name}私藏的画片哦").replace(/\{name\}/g, Config.tts_First_person)) await e.reply([await segment.image(await convertWebpToJpg(url))]); break; case 2: url = getRandomUrl("scy"); - await e.reply(`这是${Config.tts_First_person}今天找到的画片哦,主人喜欢吗?`) + await e.reply((fmts.img_reply2 || "这是{name}今天找到的画片哦,主人喜欢吗?").replace(/\{name\}/g, Config.tts_First_person)) await e.reply([await segment.image(await convertWebpToJpg(url))]); break; case 3: url = getRandomUrl("ecy"); - await e.reply(`主人,快看快看${Config.tts_First_person}发现了什么?`) + await e.reply((fmts.img_reply3 || "主人,快看快看{name}发现了什么?").replace(/\{name\}/g, Config.tts_First_person)) await e.reply([await segment.image(await convertWebpToJpg(url))]); break; case 4: url = (await get_url_from_api_lolicon('ロリ|loli|萝莉|风景|壁纸', ''))?.[0]; - await this.reply(`主人主人,${Config.tts_First_person}今天捡到了一张奇怪的明信片,拿给你看看`, false, { recallMsg: 100 }) + await this.reply((fmts.img_reply4 || "主人主人,{name}今天捡到了一张奇怪的明信片,拿给你看看").replace(/\{name\}/g, Config.tts_First_person), false, { recallMsg: 100 }) await this.reply([await segment.image(await convertWebpToJpg(url))], false, { recallMsg: 100 }); break; case 5: url = (await get_url_from_api_lolicon('ロリ|loli|萝莉', 'vtb|fgo|pcr|AzurLane|Genshin Impact|原神|BlueArchive|ブルーアーカイブ'))?.[0]; - await this.reply(`呜呜,${Config.tts_First_person}给你一张涩涩的画片,不要再戳戳人家了`, false, { recallMsg: 100 }) + await this.reply((fmts.img_reply5 || "呜呜,{name}给你一张涩涩的画片,不要再戳戳人家了").replace(/\{name\}/g, Config.tts_First_person), false, { recallMsg: 100 }) await this.reply([await segment.image(await convertWebpToJpg(url))], false, { recallMsg: 100 }); break; } @@ -223,7 +234,7 @@ export class PaimonChuo extends plugin { break; // 缺省时将返回随机音频替换为返回随机文本 default: - this.send_randow_text_msg(e); + await this.send_randow_text_msg(e); return } let voice_number = Math.ceil(Math.random() * voice_lists['length']) @@ -255,9 +266,10 @@ export class PaimonChuo extends plugin { // logger.mark('派蒙戳一戳调试:\nusrinfo=',JSON.stringify(usrinfo),';\nbotinfo=',JSON.stringify(botinfo)) /* botinfo = { "group_id": __num__, "user_id": __num__, "nickname": "小派蒙", "card": "", "sex": "female", "age": 9, "join_time": 1698625488, "last_sent_time": 1706151598, "level": 1, "role": "owner", "title": "", "title_expire_time": 0, "shutup_time": 0, "update_time": 0 } usrinfo = { "group_id": __num__, "user_id": __num__, "nickname": "_昵称_", "card": "_群昵称_", "sex": "male", "age": 88, "area": "", "join_time": 1705783666, "last_sent_time": 1706152333, "level": 1, "rank": "潜水", "role": "member", "title": "", "title_expire_time": 4294967295, "shutup_time": 0, "update_time": 1706151633 } ; */ + let fmts = Config.paimon_chou_formats || {} let mutetype = Math.ceil(Math.random() * 4) if (mutetype == 1) { - await e.reply(`是不是要${Config.tts_First_person}揍揍你才开心呀!`) + await e.reply((fmts.mute_perm1 || "是不是要{name}揍揍你才开心呀!").replace(/\{name\}/g, Config.tts_First_person)) await common.sleep(100) await e.group.muteMember(e.operator_id, 60 * jinyan_times); await common.sleep(100) @@ -276,46 +288,48 @@ export class PaimonChuo extends plugin { await common.sleep(10); await e.group.muteMember(e.operator_id, 120 * jinyan_times); await common.sleep(50) - await e.reply(`让你面壁思过${2 * jinyan_times}分钟,哼😤~`) + await e.reply((fmts.mute_perm2 || "让你面壁思过{minutes}分钟,哼😤~").replace(/\{minutes\}/g, 2 * jinyan_times)) } else if (mutetype == 3) { - await e.reply(`要怎么样才能让你不戳${Config.tts_First_person}啊!`) + await e.reply((fmts.mute_perm3 || "要怎么样才能让你不戳{name}啊!").replace(/\{name\}/g, Config.tts_First_person)) await common.sleep(100) await e.group.muteMember(e.operator_id, 60 * jinyan_times); await common.sleep(100) await e.reply('大变态!') } else if (mutetype == 4) { - await e.reply(`干嘛戳${Config.tts_First_person},${Config.tts_First_person}要惩罚你!`) + await e.reply((fmts.mute_perm4 || "干嘛戳{name},{name}要惩罚你!").replace(/\{name\}/g, Config.tts_First_person)) await common.sleep(100) await e.group.muteMember(e.operator_id, 60 * jinyan_times); } } else { + let fmts = Config.paimon_chou_formats || {} let mutetype = Math.ceil(Math.random() * 4) if (mutetype == 1) { - e.reply(`呜呜呜你欺负${Config.tts_First_person}QAQ`) + e.reply((fmts.mute_no_perm1 || "呜呜呜你欺负{name}QAQ").replace(/\{name\}/g, Config.tts_First_person)) } else if (mutetype == 2) { - e.reply(`主人有坏淫欺负${Config.tts_First_person}QAQ`) + e.reply((fmts.mute_no_perm2 || "主人有坏淫欺负{name}QAQ").replace(/\{name\}/g, Config.tts_First_person)) } else if (mutetype == 3) { - e.reply(`气死${Config.tts_First_person}了不要戳了!`) + e.reply((fmts.mute_no_perm3 || "气死{name}了不要戳了!").replace(/\{name\}/g, Config.tts_First_person)) } else if (mutetype == 4) { let text_number = Math.ceil(Math.random() * paimon_word_list['length']) - e.reply((paimon_word_list[text_number - 1] + '...呜呜,如果派蒙有管理员权限就禁言你1分钟QAQ').replace(/派蒙/g, Config.tts_First_person)) + e.reply((paimon_word_list[text_number - 1] + (fmts.mute_no_perm4 || '...呜呜,如果{name}有管理员权限就禁言你1分钟QAQ')).replace(/派蒙/g, Config.tts_First_person).replace(/\{name\}/g, Config.tts_First_person)) } } } // 如果是主人戳 else if (cfg.masterQQ.includes(e.operator_id)) { + let fmts = Config.paimon_chou_formats || {} let mutetype = Math.ceil(Math.random() * 2) if (mutetype == 1) { - e.reply(`主人连你也欺负${Config.tts_First_person},呜呜呜~`) + e.reply((fmts.master_poke1 || "主人连你也欺负{name},呜呜呜~").replace(/\{name\}/g, Config.tts_First_person)) } else if (mutetype == 2) { - e.reply('主人有什么事吗?喵~') + e.reply((fmts.master_poke2 || "主人有什么事吗?喵~").replace(/\{name\}/g, Config.tts_First_person)) } } else { logger.mark('[戳一戳禁言]bot无法判断主人是谁') @@ -435,11 +449,11 @@ export class PaimonChuo extends plugin { if (await autoEmoticons_1.sendimg_Active(e)) { return true; } else { - this.send_randow_text_msg(e) + await this.send_randow_text_msg(e) return } } catch (err) { - this.send_randow_text_msg(e) + await this.send_randow_text_msg(e) return } } @@ -457,19 +471,20 @@ export class PaimonChuo extends plugin { if (Config.debug) { logger.mark('[戳一戳反击生效]') } + let fmts = Config.paimon_chou_formats || {} let mutetype = Math.round(Math.random() * 3) if (mutetype == 1) { - e.reply(`${Config.tts_First_person}也要戳戳你>_<`) + e.reply((fmts.counter_poke1 || "{name}也要戳戳你>_<").replace(/\{name\}/g, Config.tts_First_person)) await common.sleep(1000) await e.group.pokeMember(e.operator_id) } else if (mutetype == 2) { - e.reply(`你刚刚是不是戳${Config.tts_First_person}了?${Config.tts_First_person}要戳回去!`) + e.reply((fmts.counter_poke2 || "你刚刚是不是戳{name}了?{name}要戳回去!").replace(/\{name\}/g, Config.tts_First_person)) await common.sleep(1000) await e.group.pokeMember(e.operator_id) } else if (mutetype == 3) { - e.reply(`让你戳${Config.tts_First_person},哼!!!`) + e.reply((fmts.counter_poke3 || "让你戳{name},哼!!!").replace(/\{name\}/g, Config.tts_First_person)) await common.sleep(1000) await e.group.pokeMember(e.operator_id) } @@ -479,6 +494,28 @@ export class PaimonChuo extends plugin { } + async atTrigger(e) { + if (!Config.paimon_chuoyichuo_open) return false + if (!(e.atBot || e.atme)) return false + if (e.isPrivate) return false + if (e.source) return false + if (e.msg || e.original_msg) return false + e.operator_id = e.user_id + await this.send_randow_text_msg(e) + await common.sleep(1000) + try { + if (e.group?.pokeMember) { + await e.group.pokeMember(e.user_id) + } else { + let member = Bot.pickMember(e.group_id, e.user_id) + await member.poke() + } + } catch (err) { + logger.info(logger.magenta(`[派蒙戳一戳]艾特反戳失败,${err.message}`)) + } + return true + } + /** 随机回复预设派蒙文案 */ async send_paimon_msg(e) { const wordList = getPokeTextReplies() @@ -488,124 +525,207 @@ export class PaimonChuo extends plugin { await e.reply(message0) } - /** 随机回复文案 */ + /** 发送文案,长文本自动转为匿名转发 */ + async sendReply(e, text) { + if (text.length <= 55) { + return e.reply(text) + } + if (!e.isGroup) { + return e.reply(text) + } + let info = e.member || await e.bot.getGroupMemberInfo?.(e.group_id, e.user_id) || await e.bot.pickMember?.(e.group_id, e.user_id) + let name = info?.title || info?.card || info?.nickname || e.sender?.title || e.sender?.card || e.sender?.nickname || `用户${e.user_id}` + name = String(name || '').replace(/\s+/g, '').trim() + const displayName = name.length > 6 ? `${name.slice(0, 6)}…` : name + const forwardTitle = `${displayName},我喜欢你很久了` + const node = { message: [text], nickname: forwardTitle, user_id: Bot.uin } + // 优先走 NapCat/OneBotv11 的 send_group_forward_msg,并带上外显字段。 + // 参考 FanSky_Qs 的思路:不改变正文,只改合并转发卡片外显标题/摘要。 + // 注意:不能直接发 xml,NapCat 会报 retcode=1200。 + try { + const bot = e.bot || Bot[e.self_id || Bot.uin] + if (bot?.sendApi && e.group_id) { + return await bot.sendApi('send_group_forward_msg', { + group_id: e.group_id, + messages: [{ + type: 'node', + data: { + name: forwardTitle, + uin: String(Number(e.self_id) || Number(Bot.uin) || 80000000), + content: [{ type: 'text', data: { text } }] + } + }], + // 只保留一条外显预览;source/summary/prompt 同时设置会在 NapCat 卡片上重复显示多行。 + news: [{ text: forwardTitle }] + }) + } + } catch (err) { + logger.warn(`[派蒙戳一戳]自定义外显转发失败,尝试普通合并转发:${err.message}`) + } + + const forwardMsg = { + type: 'node', + data: [node] + } + try { + return await e.reply(forwardMsg) + } catch (err) { + logger.error(`[派蒙戳一戳]合并转发发送失败,已降级普通文本:${err.message}`) + return e.reply(text) + } + } + + /** 随机回复文案(带权重) */ async send_randow_text_msg(e) { const customWordList = getCustomPokeTextReplies() if (customWordList.length) { let text_number = Math.ceil(Math.random() * customWordList['length']) let message = customWordList[text_number - 1].replace(/派蒙/g, Config.tts_First_person) - await e.reply(message) + await this.sendReply(e, message) return } - let mutetype = Math.ceil(Math.random() * 20) + const weights = Config.paimon_chou_text_weights || {} + let totalWeight = Object.values(weights).reduce((a, b) => a + b, 0) + if (totalWeight <= 0) { this.send_paimon_msg(e); return } + let rand = Math.random() * 100 + let selectedType = 'paimon_msg' + if (totalWeight !== 100) { + for (const [type, weight] of Object.entries(weights)) { + const pct = weight / totalWeight * 100 + rand -= pct + if (rand <= 0) { selectedType = type; break } + } + } else { + for (const [type, weight] of Object.entries(weights)) { + rand -= weight + if (rand <= 0) { selectedType = type; break } + } + } + + const fmts = Config.paimon_chou_formats || {} + const name = Config.tts_First_person let message = '' - switch (mutetype) { - case 1: - // 要今天使用过绘图的人才能激活这个奖励 + + switch (selectedType) { + case 'reward_nai3': { if (await redis.get(`Yz:PaimongNai:usageLimit_day:${e.operator_id}`)) { let random_nai_time = Math.ceil(Math.random() * 4) if (random_nai_time == 1 || random_nai_time == 4) random_nai_time = Math.ceil(Math.random() * 6) if (random_nai_time == 6) random_nai_time = Math.ceil(Math.random() * 8) if (random_nai_time == 8) random_nai_time = Math.ceil(Math.random() * 10) - this.addNai3UsageLimit_day(e.operator_id, random_nai_time); - e.reply(`喵>_< 谢谢你和${Config.tts_First_person}玩,${Config.tts_First_person}偷偷送给你${random_nai_time}次绘画次数哦~`, false, { recallMsg: 55 }) - break; + this.addNai3UsageLimit_day(e.operator_id, random_nai_time) + e.reply((fmts.reward_nai3 || "喵>_< 谢谢你和{name}玩,{name}偷偷送给你{num}次绘画次数哦~").replace(/\{name\}/g, name).replace('{num}', random_nai_time), false, { recallMsg: 55 }) + return } - this.send_paimon_msg(e); - break; - case 2: - await e.reply(kaomoji_list[(Math.ceil(Math.random() * kaomoji_list['length'])) - 1].replace(/派蒙/g, Config.tts_First_person)) - break; - case 3: + this.send_paimon_msg(e) + return + } + case 'kaomoji': { + await e.reply(kaomoji_list[(Math.ceil(Math.random() * kaomoji_list['length'])) - 1].replace(/派蒙/g, name)) + return + } + case 'love_speech': { message = await generate_msg_randomHellow_TuWeiLoveSpeech() - await e.reply(message) - break; - case 4: - case 5: - let today = new Date(); + await this.sendReply(e, message) + return + } + case 'kfc': { + let today = new Date() if (today.getDay() === 4) { message = await get_msg_KFC() if (message) { - chuo_text_generateAndSendAudio(message, e); - await e.reply((`“咳咳~”派蒙:\n`).replace(/派蒙/g, Config.tts_First_person) + `${message}`) - break + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, (fmts.kfc || "“咳咳~”{name}:\n").replace(/\{name\}/g, name) + `${message}`) + return } } - this.send_paimon_msg(e); - break; - case 6: + this.send_paimon_msg(e) + return + } + case 'hitokoto': { message = await get_msg_hitokoto(false) if (message) { - chuo_text_generateAndSendAudio(message, e); - await e.reply((`“咳咳~”派蒙开始了模仿:`).replace(/派蒙/g, Config.tts_First_person) + `“${message}”`) - break + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, (fmts.hitokoto || "“咳咳~”{name}开始了模仿:").replace(/\{name\}/g, name) + `“${message}”`) + return } - // case 7: - // message = await get_msg_pphua() - // if (message) { - // chuo_text_generateAndSendAudio(message, e); - // await e.reply((`“咳咳~”派蒙开始模仿讲冷笑话:`).replace(/派蒙/g, Config.tts_First_person) + `“${message}”`) - // break - // } - case 8: + this.send_paimon_msg(e) + return + } + case 'mingyanjingju': { message = await get_msg_mingyanjingju() if (message) { - chuo_text_generateAndSendAudio(message, e); - await e.reply((`“咳咳~”派蒙开始模仿伟人讲话:`).replace(/派蒙/g, Config.tts_First_person) + `“${message}”`) - break + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, (fmts.mingyanjingju || "“咳咳~”{name}开始模仿伟人讲话:").replace(/\{name\}/g, name) + `“${message}”`) + return } - case 9: + this.send_paimon_msg(e) + return + } + case 'gushici': { message = await get_msg_gushici() if (message) { - chuo_text_generateAndSendAudio(message, e); - await e.reply((`“咳咳~”派蒙开始模仿古人讲话:`).replace(/派蒙/g, Config.tts_First_person) + `“${message}”`) - break + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, (fmts.gushici || "“咳咳~”{name}开始模仿古人讲话:").replace(/\{name\}/g, name) + `“${message}”`) + return } - case 10: + this.send_paimon_msg(e) + return + } + case 'hefeng': { const _info = await e.bot.getGroupMemberInfo?.(e.group_id, e.operator_id) || await e.bot.pickMember?.(e.group_id, e.operator_id) - const _nm = _info?.card || _info?.nickname || 'i' + const _nm = _info?.title || _info?.card || _info?.nickname || 'i' message = await get_msg_hefengwenanapi(_nm) if (message) { - chuo_text_generateAndSendAudio(message, e); - await e.reply((`“咳咳~”派蒙开始模仿女仆讲话:`).replace(/派蒙/g, Config.tts_First_person) + `“${message}”`) - break + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, (fmts.hefeng || "“咳咳~”{name}开始模仿女仆讲话:").replace(/\{name\}/g, name) + `“${message}”`) + return } - // case 10: - // message = await get_msg_wyyrp() // 句子的效果不好,禁用 - // if (message) { - // chuo_text_generateAndSendAudio(message, e); - // await e.reply((`”咳咳~”派蒙开始网抑云:`).replace(/派蒙/g, Config.tts_First_person) + `”${message}”`) - // break - // } - case 11: + this.send_paimon_msg(e) + return + } + case 'aword': { message = await get_msg_AWord() if (message) { - chuo_text_generateAndSendAudio(message, e); - await e.reply((`“咳咳~”派蒙开始模仿别人讲话:`).replace(/派蒙/g, Config.tts_First_person) + `“${message}”`) - break + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, (fmts.aword || "“咳咳~”{name}开始模仿别人讲话:").replace(/\{name\}/g, name) + `“${message}”`) + return } - case 12: + this.send_paimon_msg(e) + return + } + case 'sick': { message = await get_msg_SickMsg() if (message) { - chuo_text_generateAndSendAudio(message, e); - await e.reply((`“咳咳~”派蒙开始说胡话:`).replace(/派蒙/g, Config.tts_First_person) + `“${message}”`) - break + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, (fmts.sick || "“咳咳~”{name}开始说胡话:").replace(/\{name\}/g, name) + `“${message}”`) + return } - - // 如果这个第6~12都失效就发送派蒙戳一戳默认一言 - this.send_paimon_msg(e); - break; - - // 新增的本地一言 - case 15: + this.send_paimon_msg(e) + return + } + case 'daiyu': { message = await generate_msg_Daiyu() - chuo_text_generateAndSendAudio(message, e); - await e.reply(message) - break; + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, message) + return + } + case 'fadian': { + const _info = await e.bot.getGroupMemberInfo?.(e.group_id, e.operator_id) || await e.bot.pickMember?.(e.group_id, e.operator_id) + const _nm = _info?.title || _info?.card || _info?.nickname || 'i' + let complaint = await getComplaint() + message = complaint.replace(/{target_name}/g, '「 ' + _nm + ' 」') + if (message) { + chuo_text_generateAndSendAudio(message, e) + await this.sendReply(e, message) + return + } + this.send_paimon_msg(e) + return + } default: - this.send_paimon_msg(e); - break; + this.send_paimon_msg(e) } } @@ -674,7 +794,7 @@ function getCustomPokeTextReplies() { * @return {*} */ export async function get_url_from_api_lolicon(tag1 = 'ロリ|loli|萝莉', tag2 = '', num = 1, r18 = 0) { - const url = `https://api.lolicon.app/setu/v2?size=regular&tag=${tag1}&tag=${tag2}&num=${num}${r18 ? `&r18=${r18}` : ""}`; + const url = `${Config.paimon_chou_apis?.lolicon || 'https://api.lolicon.app/setu/v2'}?size=regular&tag=${tag1}&tag=${tag2}&num=${num}${r18 ? `&r18=${r18}` : ""}`; for (let i = 0; i < 3; i++) { try { const response = await fetch(url) @@ -703,7 +823,7 @@ export async function get_url_from_api_lolicon(tag1 = 'ロリ|loli|萝莉', tag2 * @return {*} 返回文本/错误则返回null */ async function get_msg_hitokoto(is_return_from_who = false) { - let url = 'https://v1.hitokoto.cn/' + let url = Config.paimon_chou_apis?.hitokoto || 'https://v1.hitokoto.cn/' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -722,7 +842,7 @@ async function get_msg_hitokoto(is_return_from_who = false) { /**网易云热评 返回文本/错误则返回null */ async function get_msg_wyyrp() { - let url = 'https://api.xingzhige.com/API/NetEase_CloudMusic_hotReview/' + let url = Config.paimon_chou_apis?.wyyrp || 'https://api.xingzhige.com/API/NetEase_CloudMusic_hotReview/' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -739,7 +859,7 @@ async function get_msg_wyyrp() { /**随机名言警句 返回文本/错误则返回null */ async function get_msg_mingyanjingju() { - let url = 'https://oiapi.net/API/Saying' + let url = Config.paimon_chou_apis?.mingyanjingju || 'https://oiapi.net/API/Saying' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -756,7 +876,7 @@ async function get_msg_mingyanjingju() { /**随机古诗词 返回文本/错误则返回null */ async function get_msg_gushici() { - let url = 'https://oiapi.net/API/Sentences' + let url = Config.paimon_chou_apis?.gushici || 'https://oiapi.net/API/Sentences' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -773,7 +893,7 @@ async function get_msg_gushici() { /**和风女仆文案 返回文本/错误则返回null */ async function get_msg_hefengwenanapi(name) { - let url = 'http://113.31.103.19:8848' + let url = Config.paimon_chou_apis?.hefeng || 'http://113.31.103.19:8848' if (name) url += '?name=' + encodeURIComponent(name) try { let res = await fetch(url).catch((err) => logger.error(err)) @@ -791,7 +911,7 @@ async function get_msg_hefengwenanapi(name) { /**随机疯狂星期四 返回文本/错误则返回null */ async function get_msg_KFC() { - let url = 'https://oiapi.net/API/KFC/' + let url = Config.paimon_chou_apis?.kfc || 'https://oiapi.net/API/KFC/' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -808,7 +928,7 @@ async function get_msg_KFC() { /**随机一言 返回文本/错误则返回null */ async function get_msg_AWord() { - let url = 'https://oiapi.net/API/AWord' + let url = Config.paimon_chou_apis?.aword || 'https://oiapi.net/API/AWord' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -825,7 +945,7 @@ async function get_msg_AWord() { /**随机发病语录 返回文本/错误则返回null */ async function get_msg_SickMsg() { - let url = 'https://oiapi.net/API/SickL/' + let url = Config.paimon_chou_apis?.sick || 'https://oiapi.net/API/SickL/' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -846,7 +966,7 @@ async function get_msg_SickMsg() { * @return {*} */ async function send_msg_DailyEnglish(e) { - let url = 'https://oiapi.net/API/Daily' + let url = Config.paimon_chou_apis?.dailyEnglish || 'https://oiapi.net/API/Daily' try { let res = await fetch(url).catch((err) => logger.error(err)) if (!res) { @@ -855,7 +975,8 @@ async function send_msg_DailyEnglish(e) { res = await res.json() if (res.data) { - e.reply(`来和${Config.tts_First_person}一起学英语吧,老师读一遍,${Config.tts_First_person}读一遍>_<\n${res.data.en}`); + let fmt = (Config.paimon_chou_formats?.dailyEnglish || "来和{name}一起学英语吧,老师读一遍,{name}读一遍>_<").replace(/\{name\}/g, Config.tts_First_person) + e.reply(`${fmt}\n${res.data.en}`); // 图片 await e.reply(await segment.image(res.data.image)) await common.sleep(100); @@ -1811,76 +1932,14 @@ let ciku = [ * @return {*} */ function getRandomUrl(type) { - const urls = { - "ecy": [ // 二次元 - // "https://api.btstu.cn/sjbz/api.php?lx=dongman&format=images", - "https://api.fuchenboke.cn/api/dongman.php", - // "https://i18.net/api.php?fl=dongman", - // "https://i18.net/acg.php", - "https://api.boxmoe.com/random.php", // 返回下载图片的 - // "https://rpic.origz.com/api.php?category=pixiv", - "https://api.mtyqx.cn/api/random.php", - "https://api.mtyqx.cn/tapi/random.php", - "https://api.paugram.com/wallpaper/", - "http://www.98qy.com/sjbz/api.php", - "https://img.xjh.me/random_img.php", - "https://www.dmoe.cc/random.php", // 返回下载图片的 - "https://moe.jitsu.top/api", - "https://api.horosama.com/random.php", - // "https://api.likepoems.com/img/pc", - // "https://api.likepoems.com/img/pe", - // "https://api.likepoems.com/img/pixiv", - "https://v2.xxapi.cn/api/randomAcgPic?type=pc&return=302", - "https://v2.xxapi.cn/api/randomAcgPic?type=wap&return=302", - "https://api.suyanw.cn/api/comic/api.php", // 返回下载图片的 - // "https://cdn.seovx.com/d/?mom=302", - "https://ai.ycxom.top:3002/api/random/picture/二次元", - "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/acg", - "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/wallpaper", - "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/img", - ], - "scy": [ // 三次元 - // "https://api.btstu.cn/sjbz/api.php", - // "https://i18.net/cos.php", - // "https://i18.net/bing.php", - "https://t.alcy.cc/fj", // 三次元 webp格式 - // "https://api.btstu.cn/sjbz/api.php", - "https://api.lolimi.cn/API/tup/xjj.php", - // "https://api.likepoems.com/img/nature", - // "https://api.likepoems.com/img/bing", - "https://v2.xxapi.cn/api/meinvpic?return=302", - "https://v2.xxapi.cn/api/baisi?return=302", - "https://api.suyanw.cn/api/ksxjj", - // "https://cdn.seovx.com/?mom=302", - "https://ai.ycxom.top:3002/api/random/picture/三次元", - "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/girl", - ], - "ecywebp": [ // 二次元 webp格式 - "https://t.mwm.moe/mp", - "https://t.alcy.cc/ycy", - "https://t.alcy.cc/moez", - "https://t.alcy.cc/ysz", // 原神 - "https://t.alcy.cc/mp", - "https://t.alcy.cc/moemp", - "https://t.alcy.cc/ysmp", - "https://www.loliapi.com/acg", - // "http://api.mysqil.com/pc.php", - // "http://api.mysqil.com/pe.php", - // "https://api.rls.ovh/horizontal", // avif格式 - // "https://api.rls.ovh/vertical", - ], - "scywebp": [ // 三次元 webp格式 - "", - ], - "bq_img": [ // 表情 - // "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/Iochi_Mari", - ], - "bqwebp": [ - "https://t.alcy.cc/xhl", - "https://t.alcy.cc/lai", - "https://api.suyanw.cn/api/mao", - ], + const urls = Config.paimon_chou_image_urls || { + ecy: ["https://api.fuchenboke.cn/api/dongman.php"], + scy: ["https://t.alcy.cc/fj"], + ecywebp: ["https://t.mwm.moe/mp"], + bqwebp: ["https://t.alcy.cc/xhl"], }; - const randomIndex = Math.floor(Math.random() * urls[type].length); - return urls[type][randomIndex]; + const list = urls[type] + if (!list || !list.length) return '' + const randomIndex = Math.floor(Math.random() * list.length); + return list[randomIndex]; } diff --git a/guoba.support.js b/guoba.support.js index c5167495..a8adaaf5 100644 --- a/guoba.support.js +++ b/guoba.support.js @@ -1428,9 +1428,15 @@ export function supportGuoba() { { field: 'switch_EmojiTool', label: '工具新增-发送表情', - bottomHelpMessage: '新增根据情绪发送表情的工具;使用方法: 1.开启后在智能模式下与AI对话将自动在 ./data/chatgpt/sendEmojiTool/ 文件夹下创建各种情绪的子文件夹;2.把你的表情图片放入对应的情绪文件夹;3.支持图片格式 .jpg .png .gif;4.中英对照表: happy - 开心、高兴, sad - 难过、伤心, angry - 生气、愤怒, love - 爱心、喜欢, confused - 困惑、疑惑, tired - 疲惫、累, excited - 兴奋、激动, scared - 害怕、恐惧, laugh - 大笑、爆笑, cry - 哭泣、流泪, cute - 可爱、卖萌, shy - 害羞、脸红, thumbsup - 点赞、赞同, thinking - 思考、沉思, surprised - 惊讶、震惊, bored - 无聊、乏味, cool - 酷、帅气, sick - 生病、不舒服, sleep - 睡觉、困, eat - 吃饭、美食;3.可在Bot人设中加入“你将总是使用 sendEmoji 工具”;4.Gemini识别并偷图指令: #gpt偷图', + bottomHelpMessage: '新增根据情绪发送表情的工具;使用方法: 1.开启后在智能模式下与AI对话将自动在 ./data/chatgpt/sendEmojiTool/ 文件夹下创建各种情绪的子文件夹;2.把你的表情图片放入对应的情绪文件夹;3.支持图片格式 .jpg .png .gif;4.中英对照表: happy - 开心、高兴, sad - 难过、伤心, angry - 生气、愤怒, love - 爱心、喜欢, confused - 困惑、疑惑, tired - 疲惫、累, excited - 兴奋、激动, scared - 害怕、恐惧, laugh - 大笑、爆笑, cry - 哭泣、流泪, cute - 可爱、卖萌, shy - 害羞、脸红, thumbsup - 点赞、赞同, thinking - 思考、沉思, surprised - 惊讶、震惊, bored - 无聊、乏味, cool - 酷、帅气, sick - 生病、不舒服, sleep - 睡觉、困, eat - 吃饭、美食;3.可在Bot人设中加入“你将总是使用 sendEmoji 工具”;4.Gemini识别并偷图指令: #偷图', component: 'Switch' }, + { + field: 'stealImgWhitelist', + label: '偷图白名单', + bottomHelpMessage: '设置可使用 #偷图 指令的白名单,格式与对话白名单相同:群号用英文逗号分割(例如群号:123456,654321);如果想指定某QQ号则在QQ号前面添加^(例如QQ号:^123456);如果想指定某群的某QQ号则使用 群号^qq 的格式(例如:123456^123456)。不填则所有人可用。', + component: 'Input' + }, { field: 'switch_atOtherUserTool', label: '工具新增-at群友', @@ -1937,6 +1943,138 @@ export function supportGuoba() { defaultValue: '0.100' } }, + { + label: '以下为戳一戳文字回复权重配置', + component: 'Divider' + }, + { + field: 'paimon_chou_text_weights', + label: '文字回复子类型权重(修改重启生效)', + bottomHelpMessage: '按百分比随机选择文字子类型。各值总和自动归一化为100%;修改后需重启生效', + component: 'GSubForm', + componentProps: { + multiple: false, + schemas: [ + { + field: 'paimon_msg', + label: '默认卖萌文案', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'kaomoji', + label: '颜文字', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'love_speech', + label: '土味情话', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'kfc', + label: '疯狂星期四', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'hitokoto', + label: '一言', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'mingyanjingju', + label: '名言警句', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'gushici', + label: '古诗词', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'hefeng', + label: '和风女仆文案', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'aword', + label: '随机一言', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'sick', + label: '发病语录', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'fadian', + label: '发癫文案', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'daiyu', + label: '本地一言', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + { + field: 'reward_nai3', + label: '绘画次数奖励', + component: 'InputNumber', + componentProps: { min: 0, max: 999, step: 1 } + }, + ] + } + }, + { + label: '以下为戳一戳API地址配置(修改重启生效)', + component: 'Divider' + }, + { + field: 'paimon_chou_apis', + label: 'API地址', + bottomHelpMessage: 'JSON格式,修改后需重启生效。各API地址可单独替换', + component: 'InputTextArea', + componentProps: { + placeholder: '{\n "lolicon": "https://api.lolicon.app/setu/v2",\n "hitokoto": "https://v1.hitokoto.cn/",\n "dailyEnglish": "https://oiapi.net/API/Daily"\n}' + } + }, + { + label: '以下为戳一戳图片地址配置(修改重启生效)', + component: 'Divider' + }, + { + field: 'paimon_chou_image_urls', + label: '图片URL列表', + bottomHelpMessage: 'JSON格式,每类图片可增删URL源;修改后需重启生效', + component: 'InputTextArea', + componentProps: { + placeholder: '{\n "ecy": ["https://...", "https://..."],\n "scy": ["https://..."],\n "ecywebp": ["https://..."],\n "bqwebp": ["https://..."]\n}' + } + }, + { + label: '以下为戳一戳回复格式模板配置(修改重启生效)', + component: 'Divider' + }, + { + field: 'paimon_chou_formats', + label: '回复格式模板', + bottomHelpMessage: 'JSON格式,{name}会被替换为AI第一人称,{num}/{minutes}/{text}等会被替换为对应数值;修改后需重启生效', + component: 'InputTextArea', + componentProps: { + placeholder: '{\n "hitokoto": "“咳咳~”{name}开始了模仿:",\n "kfc": "“咳咳~”{name}:\\n",\n "counter_poke1": "{name}也要戳戳你>_<"\n}' + } + }, { label: 'meme表情生成', component: 'Divider' @@ -2616,7 +2754,7 @@ export function supportGuoba() { if (keyPath === 'blockWords' || keyPath === 'promptBlockWords' || keyPath === 'initiativeChatGroups' || keyPath === 'paimon_chuoyichuo_ByMsgGroups') { value = value.toString().split(/[,,;;\|]/) } - else if (keyPath === 'blacklist' || keyPath === 'whitelist') { + else if (keyPath === 'blacklist' || keyPath === 'whitelist' || keyPath === 'stealImgWhitelist') { const inputSet = new Set() value = value.toString().split(/[,,;;|\s]/).reduce((acc, item) => { item = item.trim() diff --git a/models/fadian.js b/models/fadian.js new file mode 100644 index 00000000..c6603581 --- /dev/null +++ b/models/fadian.js @@ -0,0 +1,137 @@ +export async function getComplaint() { + return ComplaintList[Math.floor(Math.random() * ComplaintList.length)] +} + +let ComplaintList = [ + "α 阿尔法, β 贝塔, γ 伽玛,δ 德尔塔, ε 伊普西隆, ζ 泽塔, η 伊塔, θ 西塔, ι 约塔, κ 卡帕, λ 兰姆达,μ 米欧 ,ν 纽, ξ 克西, ο 欧米克隆, π 派, ρ 柔 ,σ 西格玛, τ 陶 ,υ 玉普西隆, φ 弗爱, χ 凯, ψ 普赛 ♡ {target_name}🤤🤤🌹🌹", + "{target_name},天台上的风🌀🌀🌀很大,今天的风🌬🌬格外凛冽🥶🥶,我看着灯红㊙️酒绿的繁华都市🏢🏛眼皮跳了无数下😵😵,积攒着怒意🤬🤬的双臂💪🏻💪🏻猛挥砸碎了108个窗户😱😱,摔烂了38个5G高档高速高质量手机📱📱📱,玻璃渣刺破了我的衣襟👗👗,碎掉的是这颗对你永远不变的心❤️❤️❤️。你带走我吧🥺🥺🥺没有你怎么活啊🥺", + "{target_name},你失忆了,你是我老婆\n我们相识即一见钟情,相恋十年有余,第四年同居,两年后定下终身,得到我们两家长辈的祝福,结为秦晋之好,然天有不测风云,你被奸人所害,只因嫉妒我们夫妻幸福美满,家庭甜蜜和睦,后尔又为人所拐,一直杳无音讯 今日我特发此贴,正是望你知道真相,希望你知道,看到此贴的你,正是我消失了的妻子,请速来联系我,让我们一家团聚!拯救我这个破碎的家庭,和我这颗千疮百孔的心!", + "{target_name}!!!!!🥵呜呜......💕💕各种状态的{target_name}都好可爱唔啊啊啊啊啊......🥵🤤🤤♡嘿嘿...🤤不管是什么样的{target_name}...💕🤤♡都♡好♡喜♡欢♡🤤💕嘿嘿......🥵啊//已经...♡完全变成{target_name}的形状了...♡🥰没有{target_name}就完全活不下去desu♡🥰{target_name}🥵{target_name}🥵{target_name}🥵{target_name}🥵{target_name}🥵今天干了什么不知道,因为我脑子里全都是{target_name}🥵💘脑子里...♡咕啾咕啾的...♡已经...♡被{target_name}塞满了呐...♡♡🥴💘", + "{target_name},你是负二,我是负五,我们两个加在一起就是夫妻呀", + "黄桃罐头保质期是15个月,\n可乐要在打开后24小时喝掉,\n吻痕大概一周就能消失。\n两个人在一起三个月才算过了磨合期,\n似乎一切都有期限。\n这样多无趣。\n我还是喜欢一切没有规律可循的事情。\n比方说我躺在树上看星空,{target_name}突然就掉下来砸在我怀里。", + "不懂就问{target_name}是意大利和中国混血吗?\n不然怎么长得这么像我的\n\n意❤中❤人", + "首先我不是{target_name}粉,但他真的很可爱。我对{target_name}确实没有什么幻想,毕竟我不是{target_name}粉。但是该说不说的,{target_name},真的可爱死了,我真的不是{target_name}粉。有一说一,我也确实说不喜欢{target_name}。因为这个视频确实是挺好看的,我就不是{target_name}粉,但是怎么说,一看到他,心里就痒痒的,类似一种原始冲动,就像看到影视剧里看到多年未见的老友的重逢,一段崭新情缘的开端一样,激发人向美向善最淳朴的一面。就像登上山峰,目睹潮汐那般自然,仿佛冥冥之中自有天意就是一种朦胧的感觉,像伟大的革命友谊一样,令人憧憬,要是能和我牵个手就更好了,毕竟我不是{target_name}粉", + "{target_name}不是可爱风、不是性感风、也不是元气风,而是我看了就会疯。", + " 2005年出生于地球\n\n 2010年就读于美​哈佛大​学 \n\n 2011年加入海豹击突击队 \n\n 2012年前往南极实地考察成果颇丰 \n\n 2016年被提名可以改变世界的人 \n\n 2022年放弃一生荣誉 求做{target_name}的狗​", + "有人问我:“{target_name}是谁?”\n我想了想,该如何形容{target_name}呢?\n莎士比亚的语言实在华丽,用在{target_name}身上却有些纷繁了;\n徐志摩的风格热情似火,可我不忍将如此盛情强加于{target_name};\n川端康城?虽优美含蓄,但{target_name}的温柔体贴是藏不住的。\n我不知道该如何形容{target_name}了。\n但是我知道的。\n{target_name}是我所面对的黑暗中的一点萤火;\n是我即将冻僵的心脏里尚存的余温;\n是我在残酷无情的现实里的避难所啊。", + "{target_name}老婆🥵🥵🥵好美啊❤️❤️❤️绝了美到眼泪从嘴角流出淹成钱塘江大潮太美了你是神👼🏻👼🏻👼🏻是我的玫瑰🌹🌹🌹你照亮了我黑暗💫💫💫的生命让我的世界🌈🌈🌈有了意义我飞跑🏃‍♀️🏃‍♀️🏃‍♀️我猛跳我在20楼的阳台跳起了探戈💃🏻💃🏻💃🏻你让我意识到神确实存在我被美💗💗💗💗到泪流不止从此世界不再缺水 🌊🌊🌊🥰🥰🥰🥰🥰🥰🥰", + "{target_name}的内衣是什么颜色?虽然听起来很唐突,甚至有些失礼,但请允许我解释一下。\n人类对于美丽的事物总是充满求知欲,在身心都被{target_name}俘获之后,却依旧愿意更深地了解{target_name},这种品格很难不为之称赞。\n所以,我不得不再提出这个问题:{target_name}的内衣是什么颜色?可惜囿于认知水平的局限,只能停留在想象。\n是紫色的吗?像是普罗旺斯盛开的薰衣草花海般芬芳。\n是红色的吗?如罗曼尼红酒灌溉的长河一样纯粹馥郁。\n是白色的吗?宛如鸢尾花在法兰西王室旗帜上圣洁绽放。\n......\n哦,{target_name}内衣的颜色。\n还有什么能比你牵起我更深的惆怅?\n你像是拉普兰德的极光,如梦荡漾。\n你像是哈雷彗星的锋芒,璀璨辉煌。\n你像是朦胧晨曦的登场,耀眼明亮。", + "{target_name}!!有什么样的情有什么样的爱👫👫👫用什么样的爱还什么样的债💧💧💧我知道你的心里有些想不开🙅🏻‍♂️🙅🏻‍♂️🙅🏻‍♂️可是我的心里满满的全是爱❤️❤️❤️你回头看看我🤦🏻‍♂️ 不要再沉默🙇🏻‍♀️🙇🏻‍♀️🙇🏻‍♀️你说到底你想追求个什么结果我知道你在躲 你为什么不说😡😡😡你情愿让这样的思念把我淹没🏊🏻‍♀️🏊🏻‍♀️🏊🏻‍♀️", + "{target_name}!!为了你😨😨😨 我变成狼人摸样🐺🐺🐺 为了你😱😱😱 染上了疯狂🤡🤡🤡 为了你😰😰😰 穿上厚厚的伪装👹👹👹 为了你🤗🤗🤗 换了心肠💀💀💀 我们还能不能再见面🥺🥺🥺 我在佛前苦苦求了几千年🙇‍♂️🙇‍♂️🙇‍♂️ 愿意用几世🥰🥰🥰 换我们一世情缘💞💞💞 希望可以感动上天😭😭😭 我们还能不能能不能再见面🥺🥺🥺 我在佛前苦苦求了几千年🙇‍♂️🙇‍♂️🙇‍♂️ 但我在踏过这座奈何桥之前🎭🎭🎭 让我再吻一吻你的脸😘😘😘", + "{target_name},今天我做了IMBT测试,他们说我是IMBT,遇见你我才明白了I'M BT", + "我不想喜欢{target_name}了。\n原因有很多。\n她是屏幕那头的人,我是屏幕这头的人,两条平行线注定碰不到一起。\n她是为了挣我的币才与我接触,平日专注。\n她是受万人喜爱的宝藏女孩,我只不过一介平凡男孩,无论我多么喜欢,在她那里注定得不到任何正反馈……\n我想通了,决定放弃。\n下一个视频略过,视频通通删干净,眼不见心不烦,还能留出时间卷学习成绩,这不是好事一桩?\n第二天,我正常起床,洗漱,吃饭,没什么变数。我换好衣服,准备出门。\n当我踏出门外的那一刻,我才意识到,坏事了。\n我不知道该往哪个方向迈出下一步了。\n平时一览无余的街道,现在竟然充满了迷雾。我仿佛是没有罗盘的一艘船,在茫茫大海里打转。四面八方都是海水,都是一样的蓝,我该往哪走? 我要去哪? 我要干什么?\n船没有了罗盘,我丢失了方向,人生缺少了目标。\n这是很可怕的一件事,我至此以来做过的所有事情都化为了泡影,没有了意义,全部灰飞烟灭。\n路边跳过一只橘色的猫,看了我一眼,好像在嘲笑我的落魄。\n我害怕了。我逃回家里,打开电脑手机,把视频打开,把她的声音听了无数遍,直到午夜之时我沉沉睡去。\n梦里,我恍然大悟。\n人总要有个盼头,有个让你追逐的东西。它可以赋予你的努力以价值。\n原来这就是存在的意义啊,我所做的一切,不就是为了追逐,为了让她能笑着对我说,多亏了你, 我才能来到这片未曾踏足的领域?\n没错,她与我确实是不可能的,但是她却让我的生活拥有了动力与目标。\n我不想喜欢{target_name}了。\n原因只有一个。\n我已经爱上{target_name}了。", + "没关系,我不缺V看😊\n{target_name},幸亏你不在乎我😊,不然你左右为难的话,耽误你一辈子,\n{target_name}?再见的{target_name}候你要幸福!😊\n好不好😊\n{target_name}!你要开心!你要幸福!好不好开心啊!😭幸福!😭\在那边你要好好生活好吗?\n{target_name}!{target_name}!{target_name}!🚕💨💨🏃🏃🏃\n没有你我可怎么活啊😭!!\n{target_name}!😭😭😭{target_name}!\n啊啊啊啊啊啊啊😭😭😭😭😭😭😭{target_name},你把我带走吧,{target_name}!😭😭😭😭", + "{target_name}……在做什么呢?🤤\n我好想她,一直看不见她,我感到快坚持不下去了。我是不是快死了呢? 心里好痛苦,太痛苦了😣。怎么会这样,为什么会这样😭\n感觉好难受\n好难受…😫\n啊,呐噜霍多,原来…这就是[喜欢]吗😌\n得告诉大家才行呢😊\n桥都麻袋,喜欢{target_name}有什么错吗?呐,告诉我啊。搜噶,大家已经不喜欢了啊...真是冷酷的人呢,果咩纳塞,让你们看到不愉快的东西了。像我这样的人,果然消失就好了呢。也许只有在我和{target_name}的世界里,才有真正的美好存在吧\n唉?麻袋!你们在做什么? 😭为什么骗我?\n为什么要和我抢{target_name},明明是我先来的啊?😭\n絶対に許さない!不能原谅你们!😡\n我要拿回我的美女!她是我的!是属于我一个人的!😖\n啊,这就是近距离看{target_name}的感觉吗?\n为什么我❤一直在狂跳,都快从喉咙里跳出来了。原来是这样啊…只有我对{target_name}是真心的啊😭\n你们不许看😭👊🏻不许看😭👊🏻不许看😭👊🏻", + "{target_name}是想要一个名词吗\n那么我们就像星河里的一粒沙,不断流动的流着\n但我觉得对于{target_name}小姐来说那才叫沙,她想要天上的星星来填补她的孤独。但她来到人间前,找到了一颗星星\n他带她走向黑夜,用它温暖这世间", + "{target_name}之大超越了一切之外\n以如此巨大的身躯顶着这样沉重的压力\n或许是对生活太过执着的缘故吧\n不,未必啊!\n的确如此\n我们应该去更大更强的舞台啊!更闪耀的舞台上!然然!\n大家要记住呀!!一个魂们一定会在更好更大的舞台上!!每当夜深人静的时候", + "灰原哀的一切以血腥著称,都是为了让你在黑暗里变得更亮!而{target_name}小姐,不管是否做出了回应,我始终相信你的存在。", + "睡觉的时候打开{target_name}的视频,熄屏放在胸口,手机沉甸甸的重量仿佛{target_name}把头靠在我身上,音量调到最小,就是{target_name}在和我窃窃私语,看完的时候就像{target_name}躺在我的身边睡着,什么时候我才能真正抱着你,{target_name},我的{target_name}​", + "{target_name},今天物理光学开始讲光的特性了,物理老师说光是频率极高的电磁波;又说光是粒子,因为有粒子特性,光到底是什么?\n原来\n光是想你就用尽了全力", + "{target_name}完全变成了我生活的一部分,我已经没办法离开她了。", + "{target_name}和我躺在浴缸里泡澡,我坐这头,{target_name}坐那头,嘿嘿嘿", + "{target_name}现在正和我在公园里的长凳上坐着,我坐在一边,{target_name}躺在椅子上,头靠在我怀里,我还喂着{target_name}吃东西,{target_name}看得出玩累了,躺在我怀里快睡着了,她今天真的很开心呐!{target_name}睡着之前还说,今天和我一起出来玩真的太开心太幸福了,{target_name}要永远和我在一起,我听了后也很高兴,刚好{target_name}现在睡着了,我才有时间来和群友们分享一下我和{target_name}的幸福生活", + "我一直躺在{target_name}的怀里,吃着{target_name}亲手为我削的苹果,{target_name}说,啊,张口,让你小心点,口水又流出来了,来,我帮你擦擦,我便盯着{target_name},{target_name}便害羞了,后面,{target_name}说晚上想去看桃花,说要穿的美美的出去,还害羞得问我说,那个能帮我穿好和服嘛,我说没问题,说完,{target_name}脸一红,便跑出去了,趁着{target_name}出去,我来和群友们水下群", + "电梯里遇到了{target_name},她按了八层,呵真会暗示,她八层有点喜欢我", + "我可以说我刚刚起床称了一下体重,掉了2斤,结果一看是{target_name}给我的项圈忘了带,无语", + "就在刚刚我从噩梦中惊醒,抱着我睡觉的{target_name}突然被吓醒,连忙坐起身来看着我,问,怎么了做噩梦了嘛,我说,是的我梦见{target_name}离我而去了,然后直接被惊醒,现在还久久不能平复,{target_name}听了后,擦了擦我脸上的汗,说到,小傻瓜,放心我这辈子都不会离开你的,好了没什么事我们继续睡觉吧,听了{target_name}得安慰后我现在平复多了,便继续抱着{target_name}睡觉了,只不过这次我抱的更紧了", + "今天天气晴朗,我一边吃着{target_name}为我准备的爱心便当一边想着{target_name},突然电话响了,一看是{target_name}打来的,我说,是不是想我了,{target_name}说,便当好吃吗,我好想你我一刻都不想分开你,今天要早点回来哦,我听了后说,只要是你做的都好吃,放心为了不让你感到孤单,我会早点回来的,聊了半个小时后,{target_name}不舍的挂了电话,而我吃完{target_name}的爱心便当也继续去捡瓶子了", + "{target_name}小姐的脚,小小的,香香的不像手经常使用来得灵活,但有一种独特的可爱的笨拙嫩嫩的脚丫光滑细腻,凌莹剔透,看得见皮肤下面细细的血管与指甲之下粉白的月牙🥵🥵🥵再高冷的女生小脚也是敏感的害羞的,轻轻挠一挠,她就摇身一变成为娇滴滴的女孩,脚丫像是一把钥匙,轻轻掌握它就能打开女孩子的心灵", + "{target_name}为了你我要去乌克兰打仗\n因为我爱你\n在我胸口的怀表里面赫然挂着你的照片\n因为我爱你\n你是我在黑夜中耀眼的光芒\n因为我爱你\n如果没有这场战争我现在已经跟你结婚了甚至孩子都有了\n但我上了战场\n我大抵是要交代在这里了\n如果我不在了\n变态们可以代替我\n你也可以是幸福的\n哪怕我只是一个老鼠", + "有人问我:脸为什么红了,我说看到{target_name}胖次所以红了,于是又问我,咋滴又黄了,我便说,桃子吃多了把脸吃黄了", + "{target_name},我想做你口袋中的怀表,我将为你紧张、颤抖。你不曾注意过我紧绷的发条,但那是我的心脏。我的心脏会在暗中耐心地为你数着钟点,计算着时间。你不曾听见过我的心跳,但是我却一直陪着你东奔西走,而你只要在我以秒为单位的几百万次心跳当中,哪怕只有一次,向我匆匆瞥了一眼,我便会心满意足。", + "{target_name}!我的{target_name}!没有{target_name},生命就没有了意义!世界就失去了色彩!灵魂亦得不到安宁!只有听着{target_name}的声音,看着{target_name}的笑脸,才能够拯救我那潜藏着无尽深渊的心灵!{target_name}!{target_name}就是我的一切", + "雨水从叶子上滑落,只有我明白那是我思念{target_name}的泪水,风悄悄的吹过,只有我明白那是我思念{target_name}的叹息,喔!我的{target_name}", + "{target_name}是我女朋友,虽然还没公开我们的关系,没见过父母,没有同居,没有被亲朋好友祝福过,没亲手为她做过一顿饭,没有她的电话和line,但嘴长在我自己脸上,我说是就是", + "我钻的{target_name}的被窝摸得{target_name}的腿🦵亲着{target_name}的嘴", + "他们跟我说上海下雪了,但是我没有看见。看到消息的我拉开窗帘,并没有看到想象中的雪花飘飘,只看到雨滴打湿的窗户上倒映出我的脸。\n几年前的上海飘雪,我也没有太大印象了。飘散的雪花没有积起来,与我想象中的冰天雪地相去甚远。\n后来我在东京第一次看到了理想中的雪,一觉醒来后,飞舞在空中的雪花席卷了熟悉的街道,外面的世界被纯白所覆盖。我很兴奋,兴奋得只穿着单薄的睡衣就走了出门,拿手机拍下好几张图片,然后第一时间传给她。她看着我溢于文字的激动没说什么,毕竟她的家乡每年飘雪,雪景对她来说已是见怪不怪。\n再后来,她如同消融的雪花一样离开了我的世界,我也回到了上海。之后我去过很多地方,经历过各式各样的雪,但始终没能找回到那天和她撑伞漫步在飘雪东京的感觉。\n雪终究是雪,是抓握不住的;上海人终究是上海人,无法拥抱雪景。我把对于雪的爱,对于雪的美好回忆,都留在了那天。\n直到去年,我又遇到了一个女孩,她的房间外常年飘雪,她跟我说,这是因为不想让爱消融。\n早安,{target_name}。", + "想对{target_name}说中午好,但{target_name}还没开播只能流着眼泪睡去{target_name}一定会在梦中和我chuchu吧对吧!{target_name},你说对吧!", + "最近压力挺大的,我有时候都觉得很烦,却只是因为几件小事,比如书掉在地上,突然想喝奶茶却喝不到,我都会大发一通脾气。但{target_name}从身后抱住我,说我这是婚前焦虑症,还亲了亲我的嘴角,我就觉得什么都美好了", + "昨天晚上,我和{target_name}在家里躺在床上聊着天,{target_name}对我说,夫君,今天也辛苦了,我说,没事一切都是为了我们以后幸福的生活,{target_name}又说,有你这样的夫君我真的太幸福了,我听了后,开心的笑了,便立马抱住了{target_name},说,小可爱,能有你这样的妻子真是我上辈子修来的福分,说完,我便把灯关了。", + "{target_name},香香的软软的,唉嘿嘿嘿🥵🥵🥵🥵🥵", + "第一次吃{target_name}脚腌过的酸菜。\n{target_name}跟我说,人生那么长,\n我没有自信能让你记住我,\n但是你既然喜欢酸菜,\n我只能让你记住,\n我的脚是酸菜味的,\n这样以后你吃酸菜都能想起我。\n如今我已经很久没有回家了,\n每次吃酸菜都会想起{target_name},\n家里固定有酸菜,想她了都会吃上一口,\n就好像在给她嗦脚趾。", + "{target_name}睡不着要我陪着她,直到哄着她睡着了为止,没办法,为了让{target_name}安心睡觉,我只能待会再来水群了", + "今天我辗转反侧睡不着,可能是想念{target_name}的关系吧,躺在床上拼命看{target_name}切片,以为这样就能忘记{target_name}刚刚去厨房做饭的事情,现在还在我身边陪着我,以为看看别的v就没事,但看别的v每个都有{target_name}的影子,眼睛越来越大都要炸开了一样,拼命扇自己眼睛,越扇越用力,扇到自己眼泪流出来,真的不知道该怎么办,我真的想{target_name}想得要发疯了。你知道吗?每天凌晨,我的眼睛滚烫滚烫,我要狠狠看{target_name},我要让{target_name}早点休息睡在我身边,我受不了了,{target_name},我滴{target_name}", + "昨天考试,我把{target_name}的名字写满了试卷,没想到今天卷子发下来才发现没有批改,老师说爱一个人没有答案,也不分对错。", + "我忘不掉{target_name}小姐了。\n如果不是知道了{target_name}小姐,说不定我已经对这个世界没有留恋了。\n{target_name}小姐真的好可爱啊。做料理的时候笨拙的样子很可爱,故意撒娇养gachi也很可爱,唱歌的时候很可爱,生气拍桌子的时候也很可爱。\n所以我离不开{target_name}小姐了。如果早晨不是有{target_name}小姐的起床闹钟的话,说不定我永远都不愿意睁眼了。如果晚上不是有{target_name}小姐的直播预定的话,这一天我都不希望过完了。\n{target_name}小姐的眼睛好灵动,如果能映照出我就好了。{target_name}小姐的笑容好温柔,如果只为我一个人绽放就好了。{target_name}小姐的头发好柔顺,如果能让我尽情抚摸就好了。\n{target_name}小姐这样的存在真的是被允许的吗。\n只是像现在这样默念{target_name}小姐的名字,我就觉得自己是世界上最幸福的傻子。", + "{target_name}!!!😍😍😍,你是东半球😞,我是西半球😞,我们在一起就是整个地球🌐🌐😁。你是暖气团☁️☁️☁️☀️,我是冷气团🌙🌨️❄️❄️遇到你,我止不住眼泪💧🌨️🌧️。除了冷锋❄️就是暖锋☀️,希望我们的关系,可以变成准静止锋🌊🌊。就算黄赤交角变成90度,也不会放开你的手🤝🤝🤙👄👄。你是❤️❤️塔里木盆地⛄👨‍👧‍👦👩‍👧‍👦💧,我是太平洋水汽☄️☄️,我长途跋涉竭💃🏻💃🏻👯‍♂️尽全力去靠近你却永远无法💇🏼‍♂️💇🏼‍♂️达到你的心里💔💔。你在北极🌦️🌦️⛈️,我在南极🌦️", + "“好想变成雪啊,这样就可以落在{target_name}的肩上了……”\n“若是{target_name}撑了伞呢?”\n“那就落在{target_name}的红伞上,静载一路的月光。”\n“若是{target_name}将雪拂去……”\n“那就任她拂去,能在她的手掌上停留一刻,便足矣。”\n“若是{target_name}撑伞的同时快速旋转伞同时自身以一个反方向转这样形成一股气流可以不断吹雪,加上上下横跳的走路灵巧避开所有雪呢?\n“那我就落在地上,任她在我的身体上肆虐。”", + "爱情❤️不是✋🏻随便许诺💍🌹好了🆗不想😔再说👄了🔕没错 是我那么多的冷漠 让你感觉到无比的寂寞😩 不过 一个女人的❤️ 不仅仅渴望得到的一个承诺🥰 我害怕欺骗😒也害怕寂寞😣 更害怕我的心会渐渐地凋落🥀 爱情💓 不是随便许诺😟 好了 不想再说了💔 只要和{target_name}结婚就好", + "{target_name}!!!!(尖叫)(扭曲)(阴暗地爬行)(蠕动)(嘶吼)(匍匐前进)(尖叫)(拼命咕蛹)(阴森地喘息)(癫狂)(流口水)(口吐白沫)(扭动)(分裂)(激烈地翻滚)(痉挛)(扭曲)", + "{target_name},我真的好爱你。可是我不敢说。无数个清晨,似是被什么遥远的呼唤打动,双眸定睛后,闪烁起异彩🤩。大概是有所领悟,出门,打开信箱,拿到信纸便逃也似地跑进房间。小心地将那久别的寄信人名称纳入眼底,随之而来的,不可抑制一般的喜悦感几乎是震撼了自己。不禁有些恐慌,继而无端的恐慌转变成了更深邃的失望。我对自己还对这样一份残存的感情抱有期待而感到悲哀,为自己这样轻易地发生心境变化而懊恼。下一个瞬间几乎是想要杀死自己。再转一瞬竟衍生出了同情心,然后阖上双眼,想要忘却什么似的再度入眠。醒后,打开手机,动态中没有你的踪迹,手里被汗水儒湿的信封上写的也不是你。这个秋天,没有邀请函,也没有你。我狼狈地把信塞回信箱。趁着周遭无人。可是我不敢说。{target_name},我真的好爱你。", + "我得了相思病,医生给我开的药方:麝香0.05g、榔头香10g、速香3g、云头香0.3g、海狸香1g、伽香5g、龙涎香0.3g、红木香6g、灵猫香0.5g、地蜡香6g、飞沉香3g、通血香1g、香根鸢尾5g、{target_name}一位", + "我好想做{target_name}小姐的狗啊。\我知道既不是狗也不是猫的我为什么要哭的。因为我其实是一只老鼠。\n我从没奢望{target_name}小姐能喜欢自己。我明白的,所有人都喜欢理解余裕上手天才打钱的萌萌的狗狗或者猫猫,没有人会喜欢阴湿带病的老鼠。\n但我还是问了{target_name}小姐:“我能不能做你的狗?”\n我知道我是注定做不了狗的。但如果她喜欢狗,我就可以一直在身边看着她了,哪怕她怀里抱着的永远都是狗。\n可是她说喜欢的是猫。\n她现在还在看着我,还在逗我开心,是因为猫还没有出现,只有我这老鼠每天蹑手蹑脚地从洞里爬出来,远远地和她对视。\n等她喜欢的猫来了的时候,我就该重新滚回我的洞了吧。\n但我还是好喜欢她,她能在我还在她身边的时候多看我几眼吗?\n{target_name}小姐说接下来的每个圣诞夜都要和大家一起过。我不知道大家指哪些人。好希望这个集合能够对我做一次胞吞。\n\n猫猫还在害怕{target_name}小姐。\n我会去把她爱的猫猫引来的。\n我知道稍有不慎,我就会葬身猫口。\n那时候{target_name}小姐大概会把我的身体好好地装起来扔到门外吧。\n那我就成了一包鼠条,嘻嘻。\n我希望她能把我扔得近一点,因为我还是好喜欢她。会一直喜欢下去的。\n\n我的灵魂透过窗户向里面看去,挂着的铃铛在轻轻鸣响,{target_name}小姐慵懒地靠在沙发上,表演得非常温顺的橘猫坐在她的肩膀。壁炉的火光照在她的脸庞,我冻僵的心脏在风里微微发烫。", + "{target_name}小姐昨天吃了酸菜鱼,可她不知道那是我。\n 其实我就是那一条鱼。我从小就生活在海里,看海浪涛涛,听海风滚滚。海面上经常有渔民来打鱼,我知道那意味着什么。从我还是一颗小鱼苗的时候,就大鱼们说,不要去咬钩子,也不要跑到渔网里面。\n 我很害怕,大鱼们说会有鱼被捞上去当场就被剖开,我想如果是我,那可能必死无疑了,我好怕死。\n 但是从渔民口中听到什么“{target_name}”,什么“圣{target_name}之力”,什么“我想成为{target_name}小姐的狗”,可是什么是狗,是很厉害的生物吗,我想应该成为鲨鱼的。\n 然后我看到他衣服上别着一个小勋章,上面一个裙子小女生。可能那就是{target_name}吧。\n 偶然间的一瞥,我便爱上了那个小东西,我用我所谓7秒的记忆,将她铭记于心直到死去。我对{target_name}的思念与爱伴随着我的成长一直在长大。\n 我听说鱼被抓上去是要被剖、被刀、被切成两半,被放入热油,被炸、被烤、被煎被煮!但是被抓上去也是唯一能见到人类的机会。我不怕死,我一定要遇见{target_name}。\n 终于,可能是过了一年吧,那帮人,也可能是换了一波人,来抓鱼了。我毫不犹豫就游了过去,为了{target_name},为了我的爱,为了我爱的她,虽然有千千万万条鱼,我知道我只是其中微不足道的一条罢了。可是这是我唯一的机会,我想要遇见她,我不怕死。\n\n 我从来不想死,可为了{target_name},我作为一条鱼,在人类手中我的结局只能是死于非命。我躺在砧板上,旁边的伙伴疯狂甩尾,而我很听话地一动不动,来了一个人,提着一把大刀,一下将我拍晕,我突然成为了灵魂升上天空。我的肉体已经不成模样,我从未见过有鱼变成这样。一瞬间,从渔民到杀我的人,他们所有的模样我都忘了。可是我的灵魂中已经铭刻了她的名字--{target_name}。\n 我被放在了那种盘子上,看起来金黄,我不知道我的肉体成为了什么模样了。但是就在那一刻,她出现了。她就是{target_name},我心心念念的,{target_name}。\n\n 当她把筷子将我的肉体夹起那一刻,我的灵魂似乎在发光。她将它送入了嘴里--我的灵魂已经不再与我的肉体有关想,我的灵魂进入了高天之上,我看到里海里我伙伴们的嗤笑,我长辈们的哀嚎,我的爱鱼的哭泣,可是我没有任何的悲伤,因为唯有爱,是跨越物种跨越距离穿越时空的,我的灵魂已然得到所有境界和万种轮回里最为饱满的惬意与欣喜。当我回味着这一切的时候,我的灵魂开始从九天之上极速坠落于餐盘之中。\n 灵魂要陨灭了。落在餐盘里的灵魂在消散前最后那一刻,我看到了{target_name}小姐皎然的笑颜", + "刚刚在课上玩原神 ,被旁边女同学看见了,她叫我原P,我的心突然一紧,急忙解释不是这样的,为了证明我不是原P,当着她的面我打开了王者荣耀 ,我认为女生也会喜欢玩王者荣耀,只要找到共同点她就不会鄙视我了,可她却不屑的叫我农P,我内心满是茫然与羞耻,只能默默地看着主屏幕发呆,那位女同学看着我的二次元壁纸,对我说:“还是个二次元,那可真叫人恶心的”听到这我怒不可遏,直接点开了{target_name},她哭了,因为她知道她没法黑我了,全班同学都看着我,他们都为我感到骄傲。", + "圣{target_name}🙏\n 🌖🌔\n 🌖🌔\n 🌖🌔\n 🌓🌖🌔🌗\n 🌔🌖🌔🌖\n 🌒🌕🌖🌔🌕🌘\n 🌔🌕🌖🌔🌕🌖\n🌎🌎🌎🌒🌕🌕🌖🌔🌕🌕🌘🌎🌎🌎\n🌎🌎🌎🌕🌕🌕🌖🌔🌕🌕🌕🌎🌎🌎\n🌎🌎🌎🌕🌕🌕 🌕🌕🌕🌎🌎🌎\n🌎🌎🌎🌖 🌔🌎🌎🌎", + "{target_name}😭为什么我的电脑屏幕不能让{target_name}钻出来😭我这就砸个洞救你出来😭{target_name}😭", + "两年前我身材不错,身高189体重90,在龙舟队划前两舱,偶尔还能替队长领桨。单人五百全队前三,大伙都戏称我是最快右桨。教练每次训练之后拍着我的肩膀说下一届队长我来当,挑碳桨我也是第一个挑。健身房、桨池、下湖,每周的训练我都充满了斗志。\n因为我知道回去之后,可以在微信上和喜欢的女孩子谈天说地,出去喝酒吃饭。所以每次最后一个500米我冲的比谁都快。\n后来她就突然从我的生命中消失了。我也受了腰伤强制退队,摆烂长胖到210斤,以前能连做六组俯卧撑的我已经找不到了。\n直到几个月前看到{target_name}读小作文的那个视频。我仿佛又找到了两年前在岸边看着我们训练的那个女孩的身影。我又回到了训练的湖中,再一次转身,举起我的七号碳桨,喊一句:“最后一个500战术,都别给我掉速度!”然后用最大的力气划起航,怒吼着口号朝岸边冲去。\n{target_name},我就有这么喜欢你", + "我有一个朋友。\n朋友是个好人。\n起码他表白过的女孩子都这么说。\n然后补一句:“但是我们不合适。”\n朋友觉得不对。怎么会有和好人不合适的人呢?她觉得自己和坏人合适?\n“她不是正常女人。还好没有答应我,不然我肯定会被她玩得很惨的。”\n朋友这么说。\n\n朋友确实是个好人,我是这么觉得。起码他的底线比我多。\n但我觉得他的脑回路里有一堆二极管。\n那也挺好的,二极管比BJT和FET都好懂。\n//BJT:晶体三极管 FET:场效应管\n\n朋友喜欢咸粽。他端午的时候要和宿舍一整层吃甜粽的人辩论,直到对方承认正常人爱吃咸粽。\n所以我每年端午都回家。\n朋友喜欢古典,我从不在他面前谈流行。\n朋友F闪现。\n朋友……\n我其实有些羡慕朋友。能保持这样这么多年的人要么人生一帆风顺,要么就是做着梦的堂吉诃德了。\n\n有天朋友神秘兮兮地问我:“中秋你准备买水果馅月饼还是肉馅?”\n我赶紧答:“我中秋回家,随我妈买啥。”\n他说:“你这样节日总是回家不正常!学生要有学生的觉悟……”\n\n年末的时候我开始高强度冲浪。那段时间我很喜欢{target_name}小姐,评论区各种观众团建狂欢群魔乱舞,我也在那里拟态各种角色。\n直到我看见我关注列表里朋友的账号也关注了{target_name}小姐,心里忍不住咯噔一下。\n\n我在评论区翻着,想看看朋友有没有发表什么突破性成果。\n果然很早的时候他就在{target_name}小姐的动态下发表了第一条评论:\n“正常人谁看这个V啊?”\n\n我很久之后才翻到他的第二条评论。\n\n“怎么没有正常评论?”", + "{target_name}?是你吗?{target_name}老婆……嘿嘿……………好可爱……嘿嘿……{target_name}……{target_name}……我的{target_name}……嘿嘿……………亲爱的……赶紧让我抱一抱……啊啊啊{target_name}软软的脸蛋还有软软的小手手………{target_name}……不会有人来伤害你的…你就让我保护你吧嘿嘿嘿嘿嘿嘿嘿嘿……太可爱了…………美丽可爱的{target_name}……像珍珠一样……嘿嘿……{target_name}……嘿嘿…………好想一口吞掉…………但是舍不得啊……我的{target_name}……嘿嘿……我的宝贝……我最可爱的{target_name}……没有{target_name}……我就要死掉了呢……我的……嘿嘿……可爱的{target_name}……嘿嘿……可爱的{target_name}……嘿嘿[爱心]……可爱的{target_name}…………嘿嘿……可爱的{target_name}…(吸)身上的味道……好好闻~…嘿嘿……摸摸~……可爱的{target_name}……再贴近我一点嘛……(蹭蹭)嘿嘿……可爱的{target_name}……嘿嘿……~亲一口~……可爱的{target_name}……嘿嘿……抱抱你~可爱的{target_name}~(舔)喜欢~真的好喜欢~……(蹭蹭)脑袋要融化了呢~已经……除了{target_name}以外~什么都不会想了呢~[爱心]嘿嘿……可爱的{target_name}……嘿嘿……可爱的{target_name}……我的~……嘿嘿……可爱的{target_name}……嘿嘿…..嘿嘿….今晚你可跑不掉了嘿嘿….", + "我的手机真是越来越不好用了\n明明我已经开启了深色模式\n{target_name}却还是像阳光一样耀眼\n明明学校常举办反诈骗宣导\n我却还是被{target_name}骗走了心", + "我120岁的时候接受记者的采访:“这位大爷你长寿的秘诀是什么?”我掏出包里​{target_name}的照片颤颤巍巍地说:这辈子不和她在一起我是不会闭眼的。​", + "看{target_name}的第一天:{target_name}是谁[疑惑]\n看{target_name}的第二天:这有啥好看的[捂脸]\n看{target_name}的第三天:一个可爱的套皮人怎么天天给我推送[傲娇]\n看{target_name}的第四天:其实看着可爱就行了[doge]\n看{target_name}的第五天:评论区也好有意思感觉可以融入🤗\n看{target_name}的第六天:我寄吧谁啊😅\n看{target_name}的第七天:我好想做{target_name}小姐的狗啊🥰\n看{target_name}的第八天:嘿嘿,{target_name}🤤\n看{target_name}的第九天:{target_name}你带我走吧😭\n看{target_name}的第十天:{target_name}没有你我活不下去了🥵\n/remake\n看{target_name}的第一天:这寄吧谁啊[给心心]", + "王尔德说过,人们看见雾不是因为有了雾,而是因为诗人和画家教他们懂得了这种景色的神秘可爱性。\n我说,我看见{target_name}不是因为有一双善于发现美的眼睛,而是{target_name}散发的光芒已经能够透过耳朵和眼睛钻进我的心里。​", + "{target_name}问我:”你有多喜欢我?”\n我说:“300克”\n{target_name}说:“我知道,你这个太老套了。300克是心脏的重量。”\n我笑了笑,殊不知,这可是我的全部\n因为一只🐭🐭的重量,就是300克啊!", + "{target_name}你去哪了啊,电话也不接消息也不回。我一个人戴着项圈迷路了[委屈]", + "“最最喜欢你,{target_name}。”\n“什么程度?”\n“像500块红包一样。\n“500块红包?”{target_name}再次扬起脸,“什么500块红包?\n“在拼夕夕里,你突然抽到里500块红包的大奖,你为了提现这五百块付出了无数的心血,凑够了499.99元;凑够了999.99金币,凑够了99. 99幸运值,却永远因为缺少那最关键的0.01而不能提现。你说棒不棒?”\n“太哈人了😨。”\n“我就这么喜欢你🥰🥰🥰。”", + "有一个很老的笑话,说有个人很崇拜周杰伦,就在课本封面写满了周杰伦的名字,她爸看了说:“女儿啊,缺什么书就跟爸说,别老借人家周杰伦同学的课本用啊”。\n曾经我以为这是一个讽刺的笑话。结果有一次我上课开小差,回过神来发现自己在草稿纸上写满了“{target_name}”。\n我匆匆撕下那张纸,用力揉成一团,然后趁课间塞进了书包里,心里默默祈祷没人发现。\n教室里的人都在低头玩手机,我也心不在焉地划着屏幕,感觉脸颊发烫,就像暗恋差点被发现的初中生一样,害羞又害怕。\n暗恋是件害羞的事。男生总是想方设法隐瞒自己喜欢那个长发女孩,不愿告诉父母,不愿告诉朋友,不愿告诉任何人——可唯独希望那个女孩知道,我把你的名字写满了草稿纸。", + "我不想喜欢{target_name}小姐了。\n原因有很多。\n她是虚拟偶像,我是真实的,两条平行线注定碰不到一起。\n她是资本包装的商品,贩卖情感需求,只是觊觎我的钱包。\n她的表演大多是为了讨好观众获得流量,我只不过是她捞金的垫脚石。\n她是万众瞩目的偶像,我只不过一介平民,无论我多么喜欢,在她那里注定得不到任何正反馈……\n我想通了,决定出脑。\n今晚的直播不看了,关注,壁纸,牌子,收藏通通删干净,眼不见心不烦,还能保住我的钱包,这不是好事一桩?\n第二天,我正常起床,洗漱,吃饭,没什么变数。我换好衣服,准备出门。\n当我踏出门外的那一刻,我才意识到,坏事了。\n我不知道该往哪个方向迈出下一步了。 \n平时一览无余的街道,现在竟然充满了迷雾。我仿佛是没有罗盘的一艘船,在茫茫大海里打转。四面八方都是海水,都是一样的蓝,我该往哪走? 我要去哪? 我要干什么?\n船没有了罗盘,我丢失了方向,人生缺少了目标。\n这是很可怕的一件事,我至此以来做过的所有事情都化为了泡影,没有了意义,全部灰飞烟灭。\n路边跳过一只蓝色的猫,看了我一眼,好像在嘲笑我的落魄。\n我害怕了。我逃回家里,打开电视平板手机,全部把{target_name}找出来,直到{target_name}笑着对我说,奶淇淋宝,爱你们哦!我把迷迭香循环播放了无数遍,直到我听着它沉沉睡去。\n梦里,我恍然大悟。\n人总要有个盼头,有个让你追逐的东西。它可以赋予你的努力以价值。\n原来这就是{target_name}小姐存在的意义啊,我所做的一切,不就是为了追逐{target_name}小姐,为了让她能笑着对我说,你的努力,我看到了。\n没错,{target_name}小姐确实是虚拟的,但是她却让我真实的生活拥有了动力与目标。\n我不想喜欢{target_name}小姐了。\n原因只有一个。\n我已经爱上{target_name}小姐了。[给心心][给心心]", + "今天我把我的lol名字改成了“最爱{target_name}捏”。\n对面的螳螂气急败坏地抓了我8次却全部失败。\n它愤怒地质问我是不是开挂了,为什么每次抓我孤立无援都不能触发。\n我告诉它我从来不是一个人,因为{target_name}一直住在我的心里捏。🥰🥰", + "“你看V魔怔了,真恶心。”\n看着同学发给你的消息,你陷入了沉思。\n仔细想一想,你觉得自己确实魔怔了,即使被鄙夷想要向熟人安利{target_name}小姐。\n思考再三过后,你决定回到现实,放弃入脑。\n今晚有{target_name}小姐的直播,你狠下心,没有点进去,而是倒头就睡。\n第二天,你起得很早。\n因为自从你开始看{target_name}小姐后,就养成了早睡早起的习惯,再也没有赖床过。\n你离开了狭小的出租屋,来到了公司,投入了工作中。\n工作很累,你感觉有些疲惫。\n你想起了{target_name}小姐出道视频的不堪评论,以及她的笑容,烦闷减轻了不少。\n最近组长夸奖你工作很努力,别人不知道为何一向懒惰的你,在几个星期前开始一反常态地勤奋。\n只有你自己知道理由。\n撑过了加班的时间,你回到了出租屋,打开了外卖软件,却发现会员已经断了,你舍不得那些钱,所以决定自己买菜做饭。\n实际上,你看{target_name}小姐后就开始第一次尝试着做饭,没有点过外卖了。\n在超市你看到自己一向很喜欢的薯片在打折,愣了一下,没有买。\n因为你在看{target_name}小姐后,就再也没有暴饮暴食过,甚至连零食都戒掉。\n回家把饭做好,你安静地吃完了。\n看着电脑,你发现游戏已经很久没更新了。\n因为你在看{target_name}小姐后,也把一直沉迷到通宵的游戏给戒掉了。\n最终,你还是打开昨天晚上的录播,看到了{target_name}小姐热情地打招呼。\n“粉丝们们,晚上好呀~!”{target_name}小姐元气地打招呼。\n你发自内心地笑了起来。\n“晚上好!”你说。\n你忽然意识到一件事,她从来没有在你现实里出现过,却已经将你糟糕的生活改变。\n……\n看完录播后,你打开了贴吧,看到了熟悉的粉丝们在用表情包引流,有不明真相的路人在骂饭圈贵物。\n你无视了那些辱骂声,熟练地在下面RP,回复道:\n“这是虚拟主播?好可爱呀,她的名字是什么?”", + "{target_name}你知道吗,网上看到一种说法,说日本人看到烟花就会想起夏天,夏日祭和烟花大会,夏季和服还有小金鱼;而中国人看到烟花就会感到寒风灌进鼻腔,想起热腾腾的饭菜和排骨汤——该过年了。\n我觉得他说的很有道理。我还记得小时候玩烟花,都是穿着厚厚的棉袄。这也是中国人民的传统智慧——穿着厚衣服,可以玩烟花对射,被打到也不疼,就是容易把新衣服烧个窟窿,然后回家挨揍。\n我第一次见到你的时候——尽管当时我戴着耳机,而且刚过四月——我却分明听到了烟花在耳边炸开,然后再噼里啪啦地落到地面,我甚至能感受到火星子刺伤了我的眼睛。\n喜欢你的感觉呢,就像是眼睁睁看着烟花朝自己飞过来。我自以为冲浪多年,早就给自己套了几层棉袄,已经刀枪不入了,可等我反应过来,我的心已经被你烧了一个大窟窿,怎么也填不满了。\n说来也好笑,明明就是你烧穿了我的棉袄,我却还想跑到你面前,指着那个大窟窿对你炫耀:“看,我有这么喜欢你!”", + "{target_name},幸亏咱俩没领证\n领了证,我耽误你一辈子\n你保重啊,再见,还会再见吗?{target_name}?\n再见的时候你要幸福!😊\n好不好😊\n{target_name}!你要开心!你要幸福!好不好?\n开心啊!😭幸福!😭\n你的世界以后没有我了没关系你要自己幸福!\n{target_name}!{target_name}!{target_name}!🚕💨💨🏃🏃🏃\n没有你我可怎么活啊😭!!\n{target_name}😭😭😭{target_name}!\n\n啊啊啊啊啊啊啊😭😭😭😭😭😭😭{target_name},你把我带走吧,{target_name}!😭😭😭😭\n呜呜呜呜呜 😭😭😭😭", + "{target_name}!请问你是怎么穿过皮肤和黏膜的阻隔 在分泌物中的溶菌酶和巨噬细胞的吞噬中存活 还躲过浆细胞分泌的抗体或者致敏T细胞分泌的淋巴因子 住进我心里的?", + "😍😍香烟抽了无数,🚬🚬🚬烈酒喝到想吐,🤮🤮🤮向你迈出九十九步,😄😄😄你却断了我的路,😭😭😭风情万种红尘,😚😚😚唯独对你失神,{target_name}为何你要把我拒绝,💔💔💔🥺🥺🥺让我丢了灵魂。💔💔💔💔", + "看v不看{target_name},就像四大名著不看红楼梦,说明这个人文学造诣和自我修养不足,他理解不了这种内在的阳春白雪的高雅艺术,他只能看到外表的辞藻堆砌,参不透其中深奥的精神内核,他整个人的层次就卡在这里了,只能度过一个相对失败的人生。", + "猫是怎么叫的:喵喵\n\n羊是怎么叫的:咩咩\n\n牛是怎么叫的:哞哞\n\n狗是怎么叫的:{target_name}你吃了吗今天心情怎么样有喝水吗{target_name}你在吗为什么不回我消息呢{target_name}你今晚会回家吗我一个人在街上牵着脖子上链子不知所措了{target_name}我好想你啊{target_name}我今天发现自己变轻了原来是出门忘了带你给我的链子", + "有人问我:“{target_name}是谁?”]\n我想了想,该如何形容{target_name}呢?\n莎士比亚的语言实在华丽,用在{target_name}身上却有些纷繁了;\n徐志摩的风格热情似火,可我不忍将如此盛情强加于{target_name};\n川端康城?虽优美含蓄,但{target_name}的温柔体贴是藏不住的。\n我不知道该如何形容{target_name}了。\n但是我知道的。\n{target_name}是我所面对的黑暗中的一点萤火;\n是我即将冻僵的心脏里尚存的余温;\n是我在残酷无情的现实里的避难所啊。", + "是...是的...♡我喜欢{target_name}大人我超喜欢!快把{target_name}大人给我!♡好想要..♡想要..♡呜呜、,我已经变成没有{target_name}大人就不行的笨蛋了..♡啊啊,好喜欢{target_name}大人什么的..♡{target_name}大人是天使、白天也想{target_name}大人,在夜里也好想{target_name}大人♡,什么时候都想{target_name}大人,除了{target_name}大人已经什么都想不了了...最喜欢的就是..♡{target_name}大人,根本满足不了..♡想看十个小时以上!不对嘛!十小时也不够♡!\n{target_name}大人♡!请、满足我..♡求求你了!​", + "{target_name}是谁?🤔\n对于盲人来说,她是他们的眼睛。👀\n对于饥饿的人,她是他们的厨师。👨🏻‍🍳\n对于口渴的人,她是他们的甘露。💧\n不论{target_name}在想什么,我都会同意。👍🏻\n不论{target_name}在说什么,我都在倾听。👂🏻\n如果{target_name}只有一个崇拜者,那一定就是我。😭\n如果{target_name}没有崇拜者,那我就根本不存在。🤗\n草门🙌🏻", + "{target_name}!那天在考场上,我正准备用最后一支油笔芯,结果在我后面的你抢走了,我直接崩溃大哭:“我的芯!我的芯!你抢走了我的芯!”😭😭😭😭", + "{target_name}!我命运般的阿芙洛狄忒,塞纳河畔的春水不及你,保加利亚的玫瑰不及你。你是神灵般的馈赠,你是上帝赐予我拯救我,使我的灵魂受到洗礼与升华。你是我黯淡升华中一束光亮,是你照亮了我黑暗的生命,你为我黑白的世界填满色彩,使我得到新生。看到你,我如临仙境,在厄瓜多尔荡秋千,在夏威夷岛冲浪,在清迈放飞天灯,在希腊梅丽萨尼洞泛舟穿梭,在土耳其卡帕多西亚空中漫步。你的一瞥一笑在我心头舞蹈,我全部的心跳都随你跳。我飞奔,我猛跑,我高举手臂,我欢呼雀跃,我在5号21楼的阳台跳起探戈。太美了,你是神,我被美到泪流不止,喷涌而出。我的眼泪从眼眶里高压喷射出来打穿屏幕,飞过珠穆朗玛峰,飞过东非大裂谷,飞出太阳系遨游九天;汇成亚马逊河,汇成银海星汉,在我热烈滚热的心头成云成雾,倾斜而下,席卷四方!", + "{target_name}的大脚我要給你裝上監視器、😚😚監視你的一舉一動😋😋😋我要給你裝上竊聽器,你的一言一行都是這麼的泌人心脾😍😍😍我要舔你家的浴缸🛁🛁🛁我要用你的牙刷😘😘😘你是我的🤑🤑🤑你不能和別人講話😭😭😭你只能屬於我🤤🤤🤤❤️❤️❤️❤️❤️💝💝", + "想和{target_name}小姐去100个城市来99个拥抱看98场日落要97次接吻拍96张照片买95朵玫瑰去94家餐馆看93次大海走92条小巷打91次雨伞还要90场牵手种89个草莓盖88次被子递87杯温水热86次剩饭看85次电影做84顿午饭切83个水果吃82次甜品喝81次暖茶要80次的拥抱吃79遍烧烤烤78次肉串涮77次火锅来76次海鲜吃75种小吃参74场晚宴喝73杯喜酒吃72次西餐尝71颗糖果给你70枚香吻荡69遍秋千看68次日出躺67次草地看66次星空闻65次头发抱64次肩胛吻63次脸颊亲62次锁骨咬61次耳朵然后60次相拥看59场鬼片喝58杯奶茶吃57桶米花逛56个商厦打55次的士坐54次公交等53次地铁开52次自驾站51遍路灯睡50次怀里去49个鬼屋看48场表演逗47只动物坐46次飞车玩45次激流滑44次滑梯坐43次飞椅转42次陀螺吊41次吊索然后40个接吻捂39次肚子揉38次肩膀捶37次后背捏36次小腿暖35次脚丫摸34次脑袋撮33次肋骨挠32次手心逗31场大笑然后30次拥吻放29个气球钓28只大鱼玩27次飞镖放26次风筝冲25次瀑布滑24艘小船蹦23场蹦极跳22次跳伞漂21次河流在20次么么骑19次单车看18场大雪玩17遍飞艇去16次森林探15个峡谷踏14个小溪爬13座高山看12个沙漠坐11次轮船写10封情书唱9首情歌堆8个雪人摘7朵野花看6场流星许5个愿醉4次酒养3只狗吵2场架爱1辈子。", + "今天…我手震…今天…我心痛。…为什么会这样?我付出一切,却得不到想要的一点爱。…为何上天你要给我这种痛苦?我究竟做错什么了?我到底做错什么了?{target_name}。…{target_name}。…我…我…我…我真是好很爱你的,你为何要这样对我呀?呜哇呀!!…呜哇…{target_name}…{target_name}呀…口瓜——!!! 口也——!!! 口圭——!!! *噗叽啪*噫嘻嘻…咦嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻,吔哈哈哈哈哈哈哈…为了你,我要癫火呀!咦嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻…哇哈哈哈哈哈哈哈哈哈哈…", + "いずれ花と散る わたしの生命,帰らぬ時 指おり数えても,涙と笑い 過去と未来,引き裂かれしわたしは 冬の花,あなたは太陽 わたしは月,光と闇が交じり合わぬように,涙にけむる ふたりの未来,美しすぎる過去は蜃気楼,旅みたいだね,生きるってどんな時でも,木枯らしの中 ぬくもり求め 彷徨う,泣かないで わたしの恋心,涙は“{target_name}”にはにあわない,ゆけ ただゆけ いっそわたしがゆくよ,ああ 心が笑いたがっている,なんか悲しいね 生きてるって,重ねし約束 あなたとふたり,時のまにまに たゆたいながら,涙を隠した しあわせ芝居,さらば思い出たちよ,ひとり歩く摩天楼,わたしという名の物語は 最終章,悲しくって泣いてるわけじゃあない,生きてるから涙が出るの,こごえる季節に鮮やかに咲くよ,ああ わたしが 負けるわけがない,泣かないで わたしの恋心,涙は“お前”にはにあわない,ゆけ ただゆけ いっそわたしがゆくよ,ああ 心が笑いたがっている,ひと知れず されど誇らかに咲け,ああ わたしは 冬の花,胸には涙 顔には笑顔で,今日もわたしは出かける", + "你以为我还会在乎吗?😬😬😬我在昆仑山练了六年的剑😟😟😟我我的心早就和昆仑山的雪一样冷了😐😐😐我在大润发杀了十年的鱼😫😫😫我以为我的心早已跟我的刀一样冷了😩😩😩可是当我听见{target_name}的声音眼泪如黄果树瀑布般飞流直下😰😰😰😰划过我的脸 😭😭😭😭打湿了我的人字拖👹👹👹👹脚趾都变得酸涩😭😭😭", + "{target_name}、今日も一日お疲れサマ😄‼️カワイ子チャン達は、頑張り屋さん👍✨だネ‼️👏✨でも、無理は禁物🤬❌だからネ😥⚠️💦\r\nおぢさんは、今日は忙しくて、電車🚃逃しそうになったヨ(^_^;)💦焦った~😵💧疲れたカラ、早くカワイ子チャン🎀達に癒されたいナ❣️😍何ならチュッチュ💋💕してくれても良いんだゾ😉‼️(笑)", + "{target_name}、お疲れ様〜٩(ˊᗜˋ*)و🎵今日はどんな一日だっタ😘❗❓僕は、すごく心配だヨ(._.)😱💦😰そんなときは、オイシイ🍗🤤もの食べて、元気出さなきゃだネ😆", + "如果🙌🏻让你重新来过💦,你会不☝🏻会爱❤我,爱情💋让人🕺拥有快乐🥰,也会带来😞折磨🤐,曾经🖤和你一👆🏻起走🚶♂过传说中的爱河🏞,已经被我泪水💦淹没变成痛苦💔的爱河🧚♂", + "呐(伸出的小手又迅速垂下去)嗦嘎(表情失落),{target_name}已经不喜欢了呀(紧咬嘴唇),得磨,{target_name}忘了当初吗(握紧小手),莫以得丝(强忍住眼泪),已经大丈夫了呦(挤出笑脸),瓦大喜瓦,滋多滋多滋多滋多(语气越来越用力)滋多戴斯给!一滋嘛叠磨瓦撕裂嘛赛!至死都不会瓦斯裂嘛斯(认真的表情)。", + "多洗忒……{target_name}ww?呐、桥豆麻袋……已经'厌烦'吾辈了嘛?哼唧……真是'冷·酷·の·人'呢QuQ——(?°?°?)嘛——即便是这样的哇达西,一定也是有'存·在·の·意·义'的吧、内~快来'肯定'啊?不然呀……咱可就要'黑化'了哦?呐?", + "🥰🥰我神魂颠倒🥵🥵躁动的心在放鞭炮🤩🤩我的丘比特在尖叫荷尔蒙的爆发因为你的到来神魂颠倒🥵🥵迷恋着你神魂颠倒是你踩碎我的解药全都没关系🥰🥰please just give me kiss", + "这个世界最可爱的{target_name}呀🥰最乖巧的{target_name}呀没错没错{target_name}呀{target_name}呀让我牵挂世界最奇妙的你呀🤩最猜不透的你让我想你想的没办法我是一个傻瓜🤪中了你奇怪的魔法每天在你身边犯傻等待有一天你给我回答叫我你的傻瓜🤪", + "秒速5厘米,那是樱花飘落的速度,那么怎样的速度,才能走完我与你之间的距离", + "{target_name}🤤🤤🤤……嘿嘿嘿……我的{target_name}……嘿嘿嘿🤤🤤🤤……嘿嘿嘿……我的{target_name}……嘿嘿嘿🤤🤤🤤……嘿嘿嘿……我的{target_name}……嘿嘿嘿🤤🤤🤤……嘿嘿嘿……我的{target_name}……嘿嘿嘿🤤🤤🤤……嘿嘿嘿……我的{target_name}……嘿嘿嘿🤤🤤🤤……嘿嘿嘿……我的{target_name}……嘿嘿嘿🤤🤤🤤……", + "我若能说万人的方言,并天使的话语,却没有{target_name},我就成了鸣的锣,响的钹一般。 我若有先知讲道之能,也明白各样的奥秘,各样的知识,而且有全备的信念,叫我能够移山,却没有{target_name},我就算不的什么。 我若将赈济所有的穷人,又舍身叫人焚烧,却没有{target_name},仍然与我无益。 {target_name}是恒久忍耐,又有恩慈。{target_name}是不嫉妒,不自夸,不张狂。不作害羞的事,不求自己的益处,不轻易发怒,不计算人的恶。不喜欢不义,只喜欢真理。凡事包容,凡事相信,凡事盼望,凡事忍耐。 {target_name}是永不止息。我做{target_name}老婆的时候,话语像{target_name},心思像{target_name},意念像{target_name}。如今常存的有涩涩,有{target_name}。其中最大的,是和{target_name}涩涩。", + "我真的想{target_name}想得要发疯了。我躺在床上会想{target_name},我洗澡会想{target_name},我出门会想{target_name},我走路会想{target_name},我坐车会想{target_name},我工作会想{target_name},我玩手机会想{target_name},{target_name}我好想你{target_name}求求你多发动态吧没有你我可怎么办啊我的生命里不能没有你啊{target_name}我的{target_name}啊人总是贪心的,开始我也只是想和你说说话,最后却想把你占为己有可不可以给我一点勇气,让我对你说,我不能没有你我害怕再没有一个人像你一样直接且温柔的颠覆我的世界如果有一天我看不见你,我会发了疯似的满世界找你闭上眼,以为我能忘记你,但流下的眼泪,却没有骗到自己你离开以后,我的世界没有了任何颜色,连黑色都不曾施舍我只希望这个世界,可以很小很小,小到我一转身便能看见你你笑一次,我就可以高兴好几天;可看你哭一次,我就难过了好几年你永远也看不到我最寂寞时候的样子,因为只有你不在我身边的时候,我才最寂寞原来世界上真有这样的事,只要一瞬间,对一个人的喜欢就能到达顶点", + "{target_name}让我无所不能!忆往昔,{target_name}的手软软的,香香的,每天都要斯哈斯哈好几次。没了你,我该怎么活啊{target_name},{target_name}……我的{target_name}!你真的好迷人啊,一天不看你我就浑身难受,{target_name},{target_name},{target_name},{target_name},我的{target_name}", + "不去寻找{target_name}的消息,不在意{target_name}而活下去,我根本就做不到。我的生活已经被{target_name}变得苍白了,在没有{target_name}而兀自流逝了不知道多久的时间里,什么也没发生。如果就这样断绝与{target_name}有关的一切的未来的话,从今以后的人生恐怕仅仅一张作文纸就可以作结。现在的我除了{target_name}以外,什么也没有。身上这层皮里装的不是血与肉,而是{target_name}。我想{target_name},想{target_name}想地发了疯似的抓着头皮,一口气的松懈也会渗出泪来。我知道我这是自顾自的念想着她,可就算是那样,就算是那样。想得到回报就是那么的有错吗?", + "我忘不掉{target_name}了。\n如果不是知道了{target_name},说不定我已经对这个世界没有留恋了。\n{target_name}真的好可爱啊。做料理的时候笨拙的样子很可爱,故意撒娇养gachi也很可爱,唱歌的时候很可爱,生气打艾玛的时候也很可爱。\n所以我离不开{target_name}了。如果早晨不是有{target_name}的起床闹钟的话,说不定我永远都不愿意睁眼了。如果晚上不是有{target_name}的贴贴预定的话,这一天我都不希望过完了。\n{target_name}的眼睛好灵动,如果能映照出我就好了。{target_name}的笑容好温柔,如果只为我一个人绽放就好了。{target_name}的头发好柔顺,如果能让我尽情抚摸就好了。\n{target_name}这样的存在真的是被允许的吗。\n只是像现在这样默念{target_name}的名字,我就觉得自己是世界上最幸福的傻子", + "我的裤子老是被我弄破,于是我报了一个补衣服的班。有一天{target_name}教我们大家缝衣服,她问道:“谁的衣服总是弄坏”,于是我高高举起手向{target_name}大喊:“我的老破我的老破。”", + "“求求你了,给我们点钱吧。” “求求你了,我已经三天没吃过东西了”诸如此类的话不断在这条街上重复,路上西装革履和衣衫褴褛的人形成强烈的对比和冲击感。可我突然想到了什么。回头看了看之前那个女流浪汉。又摸了摸我自己的口袋。 “{target_name}喜欢善良的人。”我便成为了这条路上唯一一个朝着衣衫褴褛的人伸手的绅士。 却无半分施怜,只是带着点滴嫌恶。 他连声对我说了几句谢谢,我却没有正眼看他。 我也算是做了善良的事了。  轰  打雷了,我得抓紧时间了。{target_name}不喜欢迟到的人,不管有什么理由。 我跟别人一样,很快就赶到了{target_name}的庄园。 可我却得知{target_name}不愿意见我们。 我一下子慌了神 也不管手中的一簇紫罗兰了,就跑到大门那对着那卫士渴求着。  “您好,让我见见{target_name}吧。”“求求你了,让我见见{target_name}吧。” “我已经三天没见过{target_name}了。”", + "7:00把身上的{target_name}轻柔地扒开,起床洗漱\n7:20准备爱心早饭\n7:40看{target_name}可爱的睡姿🥰🥰🥰\n7:50叫醒她,亲亲她,安抚她的起床气\n8:00和{target_name}一起吃早饭\n8:30带{target_name}出去散步,呼吸新鲜空气\n9:30和{target_name}一起网上冲浪,分享开心\n11:00准备爱心午饭\n11:30和{target_name}一起吃饭\n12:00一起睡个午觉\n12:30逛街,看电影\n14:30一起吃{target_name}喜欢的小吃\n15:00回家,陪{target_name}画画\n16:00锻炼身体\n16:30洗澡\n17:00准备爱心晚饭\n17:30烛光晚餐\n18:00给{target_name}念书,放松休息\n20:00看{target_name}直播🥰🥰🥰\n21:30准备夜宵\n22:00喂{target_name}吃东西\n23:00洗澡睡觉,在床上回忆美好一天,相拥而眠", + "{target_name}!(扭曲)(蠕动)(嘶吼)(不可名状)(嘶吼)(扭曲)(蠕动)(嘶吼)(不可名状)(嘶吼)(扭曲)(蠕动)(嘶吼)(不可名状)(嘶吼)(扭曲)(蠕动)(嘶吼)(不可名状)(嘶吼)(走上岸)(爬行)(分裂)(广播体操)(呼啦圈)(百米赛跑)(滑铲)(下跪)(掏出戒指)嫁给我吧!", + "好想和{target_name}结婚啊🤤🤤🤤,她上班养我,我就在家打游戏,像她事业心那么强的人肯定不会放下工作的,嘿嘿🤤🤤🤤这样就能一直花{target_name}的钱。她要去上班了我就拖着{target_name}的腿不让她走,让她用她的两只小手打我🤤🤤🤤又打不动我只能恶狠狠的用稚嫩的声音骂我癞皮狗🤤🤤🤤{target_name}马上要迟到了却只能干着急地用小手砸我脑袋,{target_name}…嘿嘿🤤 …{target_name}…嘿嘿🤤 …{target_name}…嘿嘿🤤 …{target_name}…嘿嘿🤤", + "刚刚出门散步前称了一下体重,掉了2斤,结果一看才发现{target_name}给我的项圈忘记戴了,我可真笨😭😭😭😭😭😭{target_name}你在哪儿?我不该乱跑的😭😭😭没被你牵住狗绳的我走丢了😭😭😭{target_name},没有我陪伴的日子你要照顾好自己,天色暗了要早睡,身体难受了要好好休息😭😭😭{target_name}你在家里等着我,我一定会找到回家的路的😭😭😭{target_name},{target_name}​😭😭😭", + "我的{target_name},我的{target_name},我的{target_name},嘿嘿嘿我的{target_name},我的{target_name}我的{target_name}我的{target_name}!!!啊啊啊啊啊我的{target_name}!!!!(怒吼)(变成猴子)(飞进原始森林)(荡树藤)(创飞路过吃香蕉的猴子)(怒吼) (变成猴子)(飞进原始森林)(荡树藤)(创飞路过吃香蕉的猴子)(怒吼)(变成猴子)(飞进原始森林)(荡树藤)", + "{target_name}!!!我爱你!!!(尖叫)(扭曲)(阴暗的爬行) (爬行)(扭动)(阴暗地蠕动)(翻滚)(激烈地爬动)(扭曲)(痉挛)(嘶吼)(蠕动)(阴森的低吼)(爬行)(分裂)(走上岸)(扭动)(痉挛)(蠕动)(扭曲的行走)(不分对象攻击)", + "{target_name}瘾发作最严重的一次😭😭😭\n躺在床上,拼命念大悲咒,难受的一直抓自己的眼睛😱😱😱\n以为刷抖音没事,看到抖音都在发{target_name}的视频\n眼睛越来越大就要炸开了一样,拼命扇自己的眼睛,越扇越用力,扇到自己眼泪流出来😭😭😭\n真的不知道怎么办,我真的想{target_name}想的要疯了💀💀💀\n我躺在床上会想{target_name}😍😍我洗澡会想{target_name}😍😍我出门会想{target_name}😍😍我走路会想{target_name}😍😍我坐车会想{target_name}😍😍我学习会想{target_name}😍😍我玩手机会想{target_name}😍😍\n我盯着网上的{target_name}看❤️❤️我每时每刻眼睛都直直地盯着❤️❤️我真的感觉自己像中邪了一样❤️❤️我对{target_name}的念想似乎都是病态了❤️❤️\n我好孤独啊!我真的好孤独啊!\n你知道吗?每到深夜,我的眼睛滚烫滚烫\n我发病了我要疯狂看{target_name},我要狠狠看{target_name}\n我的眼睛受不了了,{target_name},我的{target_name}😍😍", + "我才不是{target_name}控,只是看到{target_name}的嘟嘴卖萌脸想要戳一下,听到{target_name}的声音瞬间精神兴奋,想到{target_name}的笑颜忍不住嘴角上扬,最喜欢的触感是{target_name}娇嫩柔弱的手,最喜欢的画面是{target_name}的双马尾在前面上下跳跃,最喜欢的死法是被一堆{target_name}压死,仅此而已,我真的不是{target_name}控。我喜欢{target_name},并不是因为她看起来很矮很萌,并不是欺负她让她大哭后要拿着棒棒糖哄她,并不是想玩什么养成游戏,并不是她看见想吃的东西拽着我的衣服要我买给她,并不是她不够高我托起她才能拿到东西,并不是每天睡觉她都会抱着你,她睡了睡……在下,只是喜欢{target_name}罢了……​", + "我也想做一个正常人啊,可是我就是忍不住犯病好想亲亲{target_name},让她的舌尖蹭着我的脸我的嘴唇。好想把脸埋在她的胸前,从身后紧紧抱住她,把她藏进我怀里,感受她的体温,让她只能窝在我的怀里🥵🥵🥵好想亲亲{target_name}的脖子,深深的呼吸她的体味和汗香🥵🥵🥵我真的一刻都等不了了,{target_name}我的{target_name},我想马上和你结婚", + "꧁꫞亲爱的{target_name}꫞꧂\n༺❀您还好吗?\n别来无恙吗?\n您现在在哪儿呢?\n有没有烦恼呢?\n无论春夏秋冬,四季轮转,唯独有{target_name}的季节迟迟不来。\n我起初不懂 ,我一点都不懂{target_name}的心意, 但是,在{target_name}赐予我的崭新人生中,我能稍微感受到一些。\n通过我所见的切片,我坚信着,{target_name}一定是个温柔善良的人,所以我也会一直一直支持你!\n即使不知道今后会遇见什么,也要下去。\n如果能够相见,我想告诉{target_name},\n我现在对【爱】也有所理解了。❀༻\n ℒℴѵℯ๓", + "{target_name}您还记得我吗?!咱俩小时候一起去神庙偷吃贡品,这个时候看门的来了,您赶紧坐在蒲团上,假装是神,我也有样学样。结果最后我们两个都没有被抓!因为您直接原地飞升,身上散发出来的圣光直接把看门人的眼睛给闪瞎了!{target_name}!你是我!的!神!", + "{target_name}真可怜,又被她们欺负了吧,你应该清楚,只有我才是你的朋友,🌹🌹🌹只有我会给你爱啊,为什么!为什么要害怕!你的朋友只有我一个人,我对你这么好,但是谁叫你是坏{target_name}呢,原谅我,我会把所有的爱给你,我真的爱你,刚才不该打你,对不起,🌹我爱你,对不起,🌹我爱你,对不起,🌹我爱你,对不起,🌹我爱你,对不起,🌹我爱你.....\n今天请原谅我犯下的错误,明天会给你更多的爱的", + "{target_name}的脚小小的香香的,不像手经常使用来得灵活,但有一种独特的可爱的笨拙,嫩嫩的脚丫光滑细腻,凌莹剔透,看得见皮肤下面细细的血管与指甲之下粉白的月牙。\n再高冷的女生小脚也是敏感的害羞的,轻轻挠-挠,她就摇身一变成为娇滴滴的女孩, 脚丫像是一把钥匙,轻轻掌握它就能打开女孩子的心灵。\n每当我看到她的脚,心中就涌起一股难以遏止的欲望。 \n我想用鼻梁去触碰她的脚心,就像月亮与星空缠绕;我想用喉结轻抚她的足弓,恰如一艘小船在水面游荡。\n轻轻地闭上眼睛,感觉橙皮在空中散发出罪恶的芳香,一朵紫罗兰在我的心头怒放,能否把你的第一拇趾近节指骨放进我的口中, 让我品尝蜜饴与阳光?\n她的脚趾甲是什么味道的捏?\n花生和豆干一起咀嚼, 可以吃出火腿的味道,我如果在她的脚上淋上炼乳,能不能品尝到幸福的味道呢?\n我伸出舌头,填满她的脚趾缝,又用犬牙轻轻磨蹭她的脚趾甲,就如同盐碱地说的野马,她皮肤上的每一滴汗液都是我的琼浆。", + "{target_name}白白的小肉脚,踩在脸上,嫩嫩的脚底肉和嘴唇鼻子完美贴合,每一口吸气呼气都会带有{target_name}的味道进入我的肺部,我的血液又会把这带有{target_name}气味的氧气输送到我全身各处,我已经离开{target_name}便无法生活了,已经无法回到正常生活中了,但这样也好", + "{target_name}是谁?\n对于盲人来说,他是他们的眼睛。\n对于饥饿的人,他是他们的厨师。\n对于口渴的人,他是他们的甘露。\n不论{target_name}在想什么,我都会同意。\n不论{target_name}在说什么,我都在倾听。\n如果{target_name}只有一个崇拜者,那一定就是我。\n如果{target_name}没有崇拜者,那我就根本不存在。\n{target_name}门~~~\n", + "{target_name}……🥰嘿嘿……🥰………好可爱……嘿嘿……{target_name}🥰……老婆🥰……我的🥰……嘿嘿………🥰……亲爱的……赶紧让我抱一抱🥰……啊啊啊{target_name}软软的脸蛋🥰🥰还有软软的小手手🥰🥰………老婆……不会有人来伤害你的🥰🥰…你就让我保护你吧嘿嘿嘿嘿嘿嘿嘿嘿🥰🥰……太可爱了🥰🥰🥰………美丽可爱的{target_name}……像珍珠一样🥰🥰🥰……嘿嘿🥰🥰🥰……老婆……嘿嘿……🥰🥰🥰……好想一口吞掉🥰…………但是舍不得啊……我的老婆🥰", + "曾经在欧洲早晨的街道上漫步时,在一个花店门口停下了脚步。\n店主看到我,微笑着向我递上一支郁金香。浓郁的花香像是一条从森林中探出的小溪,偷偷地流进我的心里。\n我几乎要沉醉在这花香里。店主笑着让我买几只郁金香回去。\n但是我却将这郁金香插回了土壤里,看着店主诧异的眼神,我只是微微一笑。因为,这郁金香再香,也没有{target_name}的浴巾香。", + "{target_name}我好喜欢你🥵🥵🥵……我喜欢你的柔软的长发🥵🥵……我喜欢你弹性的皮肤🥵🥵🥵……我喜欢你温柔的声音🥵🥵🥵……我喜欢你富有生机的心跳🥵🥵🥵……我喜欢你温润的呼吸声……我喜欢你的全部🥵🥵……我真的真的好喜欢你啊{target_name}🥵🥵🥵🥵🥵🥵……让我摸摸你吧🥵🥵🥵……让我抱抱你吧🥵……让我亲亲你,让我抱抱你🥵……我要和你一起生活🥵……答应我吧{target_name}🥵🥵🥵……嫁给我吧🥵🥵🥵……好想揉揉{target_name}软软的肚子🥵🥵🥵……好想舔{target_name}香艳的后背🥵🥵🥵……好想和{target_name}贴贴🥵……想变成美少女和{target_name}贴贴🥵🥵……要是{target_name}真的存在就好了🥵……要是{target_name}真的存在就有人能陪我了……再也不用一个人关在房间里连着几个小时对着电脑冲了……有可爱的{target_name}能陪我玩……和{target_name}一起野餐……和{target_name}一起看书……和{target_name}一起看电影……终于不用再一个人忍受孤独了……终于能有好朋友了……还是可爱的女孩子……{target_name}……我的{target_name}……要是{target_name}真的存在该有多好啊……", + "我真是太喜欢{target_name}了,一天见不到她,我是饭也吃不香,觉也睡不好。昨夜,窗间梅花开了。我走了过去不自觉的数了起来,那一夜我知道了,在一棵梅树上居然能够开出九万三千四百二十一朵梅花。在哪每一分每一秒的时间里,我都感觉度日如年。我知道这是因为什么,就是因为{target_name}。我的心情也被影响着,每隔十几分钟我便会站起身向窗口看去,希望看看{target_name}是不是还在,或者看看她是否已经离去。\n 这一天我又来到窗边,看见窗外的梅花开了。{target_name}依旧在那儿,这让我的心又燃烧了起来,我觉得她就像是那九万三千四百二十一朵梅花一般,美丽而且高傲,只可远观却不可亵玩焉。我看见了她眼中的笑意。这样的笑意,是我永远也无法触及的,是我不敢触及的,我只敢远远地看着她,这样就足够了。\n 今晚,我决定了,我决定把这些梅花摘下来,带回去给她,让他开心。\n 我的手放到窗户上,我轻轻的把手放了上去,我的手刚刚接触到那层薄薄的窗纱,我的脸突然红了,我不敢看向窗外,因为窗外站着的是{target_name},{target_name}的眼睛正在盯着我,她在用那双眼睛告诉我,她已经看见了我。我慌张的放下手,跑回屋子里,我不知道应该怎么面对{target_name},我觉得自己的心跳好快,我害怕看向她,但是我又忍不住。\n 就这样,我呆坐在床上整整一夜,等到第二天醒来,我发现自己的心脏依然在砰砰乱跳着。我的心里充满了羞涩,这样的羞涩我从未体验过。我的心里充满了甜蜜和幸福,我知道{target_name}肯定会答应嫁给我的。\n 想到这里,我的脸又红了,我不断地幻想着{target_name}穿婚纱的模样,我觉得自己真是太疯狂了,但是我又是那么的期待着。{target_name}一直是我梦寐以求的人,但是我从来没有想过有朝一日她会属于我,她的一颦一笑一举一动,她的一切一切都在牵动着我的内心,牵动着我的心情,牵动着我的一切,包括她的一切。就连她的一个皱眉都是我无比珍贵的财富,是我的生命。这样的感觉,我是多么的幸福。{target_name}就是我一切的财富。我觉得我已经拥有了这一切。\n 这样的感觉让我沉醉其中,这样的感觉让我感觉自己好像飘在云端一般。我知道{target_name}是爱我的,只不过她不善于表达罢了,但是她的眼神是骗不了我的,{target_name}的心中也有着我。这样的认识让我觉得我的付出是值得的,因为我的付出并不是白费的。\n {target_name}是个美丽的人,她的美是无与伦比的,她是个非常有才华的人,这点是毋庸置疑的,因为她是我心中的偶像,因为她是那么的优秀。她让人怜爱,因为她一直在默默守候着我的到来。​", + "嘿嘿……可爱的{target_name}…(吸)身上的味道……好好闻~♥…嘿嘿……摸摸~……可爱的{target_name}……再贴近我一点嘛……(蹭蹭)嘿嘿……老婆……嘿嘿……~亲一口~……可爱的老婆……嘿嘿……抱抱你~{target_name}~(舔)喜欢~真的好喜欢~……(蹭蹭)脑袋要融化了呢~已经……除了{target_name}以外~什么都不会想了呢~♥嘿嘿……可爱的{target_name}……嘿嘿……可爱的老婆……我的~……嘿嘿……", + "今年是得阿尔兹海默症的第十年。我感到许多东西正在离我而去。我先是忘记了那些精丽的辞藻,然后又忘记了那些复杂的句式。接着忘记了语法,最后,我只能用一些破碎的词汇来表达自己了记忆也在离我而去,我现在唯一记得的是我身边这个深爱着的人。我想趁自己尚能动弹陪他去趟超市,到了我这个年岁,所有平凡的时光都是一种生命的恩典。{target_name}请你放弃无谓的挣扎速度与我结婚", + "从前有人问:如果船上的木头被逐渐替换,直到所有的木头都不是原来的木头,那这艘船还是原来的那艘船吗?我也问自己:人的细胞每七年更新一次,七年后的我还能记得{target_name}吗?很多年后我才知道,我之所以像条不系之舟四处漂泊,就是为了向{target_name}靠近。", + "昨天我到医院看医生,因为最近总是突然心脏痛。\n吃饭的时候,看电影的时候,走在大街上的时候,总是没来由的突然抽痛一下。医生说我这可能是熬夜太多,没啥大问题,但以防万一,还是建议我做一个详细检查。这一做检查就查出病了。\n检查显示我心脏里有异物,我一看片子都差点吓晕——一个金属块,一直藏在我心脏里。医生问我是不是以前受过枪伤,因为那个异物看着像是一枚子弹。我一脸懵逼,说没有啊,我就一普通学生,怎么可能!医生仔细检查了我的胸口,但是怎么也找不到伤口。\n医生也觉得奇怪,说从医这么多年没见过这种情况,如果是吞下去的子弹,不可能会到心脏里;这么粗的子弹也不可能是通过血管进入心脏的。但是有一点是确定的——如果不尽快取出来,我就会有生命危险。\n手术后,我摸摸自己的左胸,那里还缠着绷带——\n医生的技术很好,伤口开得不大,但还是会留下无法消除的疤痕。\n护士端来一个托盘,里面盛着一枚子弹,上面还带着我的血。我把子弹洗干净带回家,做成了吊坠。\n到家后,我打开了{target_name}的照片,我突然感觉心脏被狠狠击中。\n我这才想起来,那不是子弹,是我第一次见到{target_name}时,她明媚的笑容。", + "2003年11月21日出生于中国 \n2010年就读于美麻国省理工 \n2011年加入海豹击突击队 \n2012年前往利叙亚执行任务成功解救三千人质 \n2013年参加美国总选统举以1票之落差选 \n2016年被提名可以改变世界的人 \n2022年为{target_name}放弃一身名誉​\n" +] diff --git a/utils/config.js b/utils/config.js index d828eaa0..faa087da 100644 --- a/utils/config.js +++ b/utils/config.js @@ -114,6 +114,118 @@ const defaultConfig = { paimon_chou_IsSendLocalpic: true, paimon_chou_IsUseLoliconApi: false, paimon_chou_text_generateAndSendAudio: false, + + // 戳一戳 API 地址配置 + paimon_chou_apis: { + lolicon: "https://api.lolicon.app/setu/v2", + hitokoto: "https://v1.hitokoto.cn/", + wyyrp: "https://api.xingzhige.com/API/NetEase_CloudMusic_hotReview/", + mingyanjingju: "https://oiapi.net/API/Saying", + gushici: "https://oiapi.net/API/Sentences", + hefeng: "http://113.31.103.19:8848", + kfc: "https://oiapi.net/API/KFC/", + aword: "https://oiapi.net/API/AWord", + sick: "https://oiapi.net/API/SickL/", + dailyEnglish: "https://oiapi.net/API/Daily" + }, + + // 戳一戳图片地址配置 + paimon_chou_image_urls: { + ecy: [ + "https://api.fuchenboke.cn/api/dongman.php", + "https://api.boxmoe.com/random.php", + "https://api.mtyqx.cn/api/random.php", + "https://api.mtyqx.cn/tapi/random.php", + "https://api.paugram.com/wallpaper/", + "http://www.98qy.com/sjbz/api.php", + "https://img.xjh.me/random_img.php", + "https://www.dmoe.cc/random.php", + "https://moe.jitsu.top/api", + "https://api.horosama.com/random.php", + "https://v2.xxapi.cn/api/randomAcgPic?type=pc&return=302", + "https://v2.xxapi.cn/api/randomAcgPic?type=wap&return=302", + "https://api.suyanw.cn/api/comic/api.php", + "https://ai.ycxom.top:3002/api/random/picture/二次元", + "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/acg", + "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/wallpaper", + "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/img", + ], + scy: [ + "https://t.alcy.cc/fj", + "https://api.lolimi.cn/API/tup/xjj.php", + "https://v2.xxapi.cn/api/meinvpic?return=302", + "https://v2.xxapi.cn/api/baisi?return=302", + "https://api.suyanw.cn/api/ksxjj", + "https://ai.ycxom.top:3002/api/random/picture/三次元", + "https://ai.ycxom.top:3002/api/v1/media/picture/by-dir/girl", + ], + ecywebp: [ + "https://t.mwm.moe/mp", + "https://t.alcy.cc/ycy", + "https://t.alcy.cc/moez", + "https://t.alcy.cc/ysz", + "https://t.alcy.cc/mp", + "https://t.alcy.cc/moemp", + "https://t.alcy.cc/ysmp", + "https://www.loliapi.com/acg", + ], + bqwebp: [ + "https://t.alcy.cc/xhl", + "https://t.alcy.cc/lai", + "https://api.suyanw.cn/api/mao", + ], + }, + + // 戳一戳文字回复格式模板 + paimon_chou_formats: { + hitokoto: "“咳咳~”{name}开始了模仿:", + mingyanjingju: "“咳咳~”{name}开始模仿伟人讲话:", + gushici: "“咳咳~”{name}开始模仿古人讲话:", + hefeng: "“咳咳~”{name}开始模仿女仆讲话:", + aword: "“咳咳~”{name}开始模仿别人讲话:", + sick: "“咳咳~”{name}开始说胡话:", + kfc: "“咳咳~”{name}:", + dailyEnglish: "来和{name}一起学英语吧,老师读一遍,{name}读一遍>_<", + reward_nai3: "喵>_< 谢谢你和{name}玩,{name}偷偷送给你{num}次绘画次数哦~", + counter_poke1: "{name}也要戳戳你>_<", + counter_poke2: "你刚刚是不是戳{name}了?{name}要戳回去!", + counter_poke3: "让你戳{name},哼!!!", + master_poke1: "主人连你也欺负{name},呜呜呜~", + master_poke2: "主人有什么事吗?喵~", + mute_no_perm1: "呜呜呜你欺负{name}QAQ", + mute_no_perm2: "主人有坏淫欺负{name}QAQ", + mute_no_perm3: "气死{name}了不要戳了!", + mute_no_perm4: "{text}...呜呜,如果{name}有管理员权限就禁言你1分钟QAQ", + mute_perm1: "是不是要{name}揍揍你才开心呀!", + mute_perm2: "让你面壁思过{minutes}分钟,哼😤~", + mute_perm3: "要怎么样才能让你不戳{name}啊!", + mute_perm4: "干嘛戳{name},{name}要惩罚你!", + mute_fallback1: "呜呜,有什么开心不开心的都冲{name}来吧QAQ", + mute_fallback2: "请戳{name}吧,{name}...{name}什么都愿意做QAQ", + mute_fallback3: "呜呜呜,{name}愿意为你做任何事情", + img_reply1: "喵>_< {name}有点开心,这是{name}私藏的画片哦", + img_reply2: "这是{name}今天找到的画片哦,主人喜欢吗?", + img_reply3: "主人,快看快看{name}发现了什么?", + img_reply4: "主人主人,{name}今天捡到了一张奇怪的明信片,拿给你看看", + img_reply5: "呜呜,{name}给你一张涩涩的画片,不要再戳戳人家了", + }, + + // 戳一戳文字子类型权重配置 (发送文字时按权重随机选一种) + paimon_chou_text_weights: { + paimon_msg: 11, + kaomoji: 2, + love_speech: 3, + kfc: 2, + hitokoto: 3, + mingyanjingju: 2, + gushici: 2, + hefeng: 2, + aword: 2, + sick: 2, + daiyu: 5, + reward_nai3: 1, + }, + vits_emotion: 'Happy', vits_auto_emotion: false, style_text: '', @@ -196,6 +308,7 @@ const defaultConfig = { enablePrivateChat: false, whitelist: [], blacklist: [], + stealImgWhitelist: [], ttsRegex: '/匹配规则/匹配模式', slackUserToken: '', slackBotUserToken: '',