MCPcopy Create free account
hub / github.com/TeleBoxOrg/TeleBox_Plugins / REVPlugin

Class REVPlugin

rev/rev.ts:35–591  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

33 isGif: boolean;
34 isWebm: boolean;
35}
36
37class REVPlugin extends Plugin {
38
39 name = 'rev';
40
41 description = `🔄 <b>反转插件</b>
42
43<b>✨ 功能介绍</b>
44支持文字和媒体的多种反转操作,让你的内容倒过来!
45
46<b>📝 文字反转</b>
47• <code>${mainPrefix}rev [文字]</code> - 反转文字内容(支持 emoji)
48• <code>${mainPrefix}rev</code>(回复文字消息)- 反转回复的文字
49
50<b>🖼️ 媒体反转</b>
51支持格式:图片 / GIF / WebM / WebP
52• <code>${mainPrefix}rev</code>(回复媒体)- 水平翻转
53• <code>${mainPrefix}rev h</code> - 水平翻转(左右镜像)
54• <code>${mainPrefix}rev v</code> - 垂直翻转(上下镜像)
55• <code>${mainPrefix}rev c</code> - 颜色反转(负片效果)
56• <code>${mainPrefix}rev h c</code> - 组合使用(水平翻转 + 颜色反转)
57
58<b>💡 使用示例</b>
59• <code>${mainPrefix}rev 你好世界</code> → 界世好你
60• 回复图片 + <code>${mainPrefix}rev v</code> → 上下翻转的图片
61• 回复 GIF + <code>${mainPrefix}rev c</code> → 负片效果的 GIF
62• 回复 WebM + <code>${mainPrefix}rev h c</code> → 水平翻转 + 负片效果`;
63
64 cmdHandlers = {
65 rev: async (msg: Api.Message) => {
66 try {
67 const args = this.parseArgs(msg);
68 const { flipMode, invertColors, remaining } =
69 this.extractMediaOptions(args);
70 const inputText = remaining.join(' ').trim();
71
72 // 处理文本反转
73 if (inputText) {
74 await this.handleTextReverse(msg, inputText);
75 return;
76 }
77
78 // 处理媒体反转
79 const replyMsg = await safeGetReplyMessage(msg);
80 if (replyMsg) {
81 const handled = await this.handleReplyMessage(
82 msg,
83 replyMsg,
84 flipMode,
85 invertColors
86 );
87 if (handled) return;
88 }
89
90 // 无有效内容时的提示
91 await msg.edit({
92 text: `❌ 请提供文本内容或回复一条支持的消息\n\n<b>支持的格式:</b>\n• 文本消息(逐行反转)\n• 图片(JPG/PNG/BMP/WebP)\n• 动图(GIF/.gif.mp4)\n• 贴纸(WebM)\n\n<b>使用方法:</b>\n<code>${mainPrefix}rev [文本]</code> 或回复消息使用 <code>${mainPrefix}rev [参数]</code>`,

Callers

nothing calls this directly

Calls 6

parseArgsMethod · 0.95
extractMediaOptionsMethod · 0.95
handleTextReverseMethod · 0.95
handleReplyMessageMethod · 0.95
htmlEscapeMethod · 0.95
editMethod · 0.45

Tested by

no test coverage detected