-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtextmaker.js
More file actions
117 lines (108 loc) · 5.29 KB
/
Copy pathtextmaker.js
File metadata and controls
117 lines (108 loc) · 5.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
const axios = require('axios');
const mumaker = require('mumaker');
// Base channel info template
const channelInfo = {
forwardingScore: 1,
isForwarded: true,
forwardedNewsletterMessageInfo: {
newsletterJid: '120363161513685998@newsletter',
newsletterName: 'JINNY OF ASHES XMD',
serverMessageId: -1
}
};
// Reusable message templates
const messageTemplates = {
error: (message) => ({
text: message,
contextInfo: channelInfo
}),
success: (text, imageUrl) => ({
image: { url: imageUrl },
caption: "GENERATED BY JINNY OF ASHES-BOT",
contextInfo: channelInfo
})
};
async function textmakerCommand(sock, chatId, message, q, type) {
try {
if (!q) {
return await sock.sendMessage(chatId, messageTemplates.error("Please provide text to generate\nExample: .metallic Nick"));
}
// Extract text
const text = q.split(' ').slice(1).join(' ');
if (!text) {
return await sock.sendMessage(chatId, messageTemplates.error("Please provide text to generate\nExample: .metallic Nick"));
}
try {
let result;
switch (type) {
case 'metallic':
result = await mumaker.ephoto("https://en.ephoto360.com/impressive-decorative-3d-metal-text-effect-798.html", text);
break;
case 'ice':
result = await mumaker.ephoto("https://en.ephoto360.com/ice-text-effect-online-101.html", text);
break;
case 'snow':
result = await mumaker.ephoto("https://en.ephoto360.com/create-a-snow-3d-text-effect-free-online-621.html", text);
break;
case 'impressive':
result = await mumaker.ephoto("https://en.ephoto360.com/create-3d-colorful-paint-text-effect-online-801.html", text);
break;
case 'matrix':
result = await mumaker.ephoto("https://en.ephoto360.com/matrix-text-effect-154.html", text);
break;
case 'light':
result = await mumaker.ephoto("https://en.ephoto360.com/light-text-effect-futuristic-technology-style-648.html", text);
break;
case 'neon':
result = await mumaker.ephoto("https://en.ephoto360.com/create-colorful-neon-light-text-effects-online-797.html", text);
break;
case 'devil':
result = await mumaker.ephoto("https://en.ephoto360.com/neon-devil-wings-text-effect-online-683.html", text);
break;
case 'purple':
result = await mumaker.ephoto("https://en.ephoto360.com/purple-text-effect-online-100.html", text);
break;
case 'thunder':
result = await mumaker.ephoto("https://en.ephoto360.com/thunder-text-effect-online-97.html", text);
break;
case 'leaves':
result = await mumaker.ephoto("https://en.ephoto360.com/green-brush-text-effect-typography-maker-online-153.html", text);
break;
case '1917':
result = await mumaker.ephoto("https://en.ephoto360.com/1917-style-text-effect-523.html", text);
break;
case 'arena':
result = await mumaker.ephoto("https://en.ephoto360.com/create-cover-arena-of-valor-by-mastering-360.html", text);
break;
case 'hacker':
result = await mumaker.ephoto("https://en.ephoto360.com/create-anonymous-hacker-avatars-cyan-neon-677.html", text);
break;
case 'sand':
result = await mumaker.ephoto("https://en.ephoto360.com/write-names-and-messages-on-the-sand-online-582.html", text);
break;
case 'blackpink':
result = await mumaker.ephoto("https://en.ephoto360.com/create-a-blackpink-style-logo-with-members-signatures-810.html", text);
break;
case 'glitch':
result = await mumaker.ephoto("https://en.ephoto360.com/create-digital-glitch-text-effects-online-767.html", text);
break;
case 'fire':
result = await mumaker.ephoto("https://en.ephoto360.com/flame-lettering-effect-372.html", text);
break;
default:
return await sock.sendMessage(chatId, messageTemplates.error("Invalid text generator type"));
}
if (!result || !result.image) {
throw new Error('No image URL received from the API');
}
await sock.sendMessage(chatId, messageTemplates.success(text, result.image));
} catch (error) {
console.error('Error in text generator:', error);
await sock.sendMessage(chatId, messageTemplates.error(`Error: ${error.message}`));
}
} catch (error) {
console.error('Error in textmaker command:', error);
await sock.sendMessage(chatId, messageTemplates.error("An error occurred. Please try again later."));
}
}
module.exports = textmakerCommand;