|
const { cmd } = require("../command"); |
|
const { fetchEmix } = require("../lib/emix-utils"); |
|
const { getBuffer } = require("../lib/functions"); |
|
const { Sticker, StickerTypes } = require("wa-sticker-formatter"); |
|
|
|
cmd({ |
|
pattern: "emix", |
|
desc: "Combine two emojis into a sticker.", |
|
category: "fun", |
|
react: "π", |
|
use: ".emix π,π", |
|
filename: __filename, |
|
}, async (conn, mek, m, { args, q, reply }) => { |
|
try { |
|
if (!q.includes(",")) { |
|
return reply("β *Usage:* .emix π,π\n_Send two emojis separated by a comma._"); |
|
} |
|
|
|
let [emoji1, emoji2] = q.split(",").map(e => e.trim()); |
|
|
|
if (!emoji1 || !emoji2) { |
|
return reply("β Please provide two emojis separated by a comma."); |
|
} |
|
|
|
let imageUrl = await fetchEmix(emoji1, emoji2); |
|
|
|
if (!imageUrl) { |
|
return reply("β Could not generate emoji mix. Try different emojis."); |
|
} |
|
|
|
let buffer = await getBuffer(imageUrl); |
|
let sticker = new Sticker(buffer, { |
|
pack: "Emoji Mix", |
|
author: "ALI-MD", |
|
type: StickerTypes.FULL, |
|
categories: ["π€©", "π"], |
|
quality: 75, |
|
background: "transparent", |
|
}); |
|
|
|
const stickerBuffer = await sticker.toBuffer(); |
|
await conn.sendMessage(mek.chat, { sticker: stickerBuffer }, { quoted: mek }); |
|
|
|
} catch (e) { |
|
console.error("Error in .emix command:", e.message); |
|
reply(`β Could not generate emoji mix: ${e.message}`); |
|
} |
|
}); |
|
|
|
|