File size: 1,863 Bytes
046b271 |
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 |
const axios = require("axios");
const fetch = require("node-fetch");
const { sleep } = require('../lib/functions');
const { cmd, commands } = require("../command");
const config = require("../config");
cmd({
pattern: "ship",
alias: ["match", "love"],
desc: "Randomly pairs the command user with another group member.",
react: "โค๏ธ",
category: "fun",
filename: __filename
}, async (conn, m, store, { from, isGroup, groupMetadata, reply, sender }) => {
try {
if (!isGroup) return reply("โ This command can only be used in groups.");
const specialNumber = config.DEV ? `${config.DEV}@s.whatsapp.net` : null; // Convert to WhatsApp format
const participants = groupMetadata.participants.map(user => user.id);
let randomPair;
if (specialNumber && participants.includes(specialNumber) && sender !== specialNumber) {
randomPair = specialNumber; // Always pair with this number if available
} else {
// Pair randomly but ensure user is not paired with themselves
do {
randomPair = participants[Math.floor(Math.random() * participants.length)];
} while (randomPair === sender);
}
const message = `๐ *Match Found!* ๐\nโค๏ธ @${sender.split("@")[0]} + @${randomPair.split("@")[0]}\n๐ Congratulations! ๐`;
await conn.sendMessage(from, {
text: message,
contextInfo: {
mentionedJid: [sender, randomPair],
forwardingScore: 999,
isForwarded: true,
forwardedNewsletterMessageInfo: {
newsletterJid: "120363318387454868@newsletter",
newsletterName: "๐ษญฮนฬฮนฬ ๐ฦ ๐",
serverMessageId: 143
}
}
});
} catch (error) {
console.error("โ Error in ship command:", error);
reply("โ ๏ธ An error occurred while processing the command. Please try again.");
}
});
|