if (!global.unfriendData) global.unfriendData = { stop: false, running: false, pending: [] }; module.exports = { config: { name: "unfriend", aliases: ["fun"], version: "14.0.0", author: "𝐌𝐚𝐑𝐮𝐅", countDown: 5, role: 2, category: "owner", guide: { en: "{pn} 10 = 10 āϜāύ\n{pn} all = āϏāĻŦāĻžāχ\n{pn} yes = āĻ•āύāĻĢāĻžāĻ°ā§āĻŽ\n{pn} stop = āĻĨāĻžāĻŽāĻžāĻ“\n{pn} list = āĻ•āϤ āĻĢā§āϰ⧇āĻ¨ā§āĻĄ āφāϛ⧇" } }, onStart: async function ({ api, event, args, message }) { const cmd = args[0]?.toLowerCase(); // STOP if (cmd === "stop") { if (!global.unfriendData.running && global.unfriendData.pending.length === 0) return message.reply("❌ āϕ⧋āύ⧋ āφāύāĻĢā§āϰ⧇āĻ¨ā§āĻĄ āϚāϞāϛ⧇ āύāĻž"); global.unfriendData.stop = true; global.unfriendData.pending = []; return message.reply("🛑 āĻĨāĻžāĻŽāĻŋā§Ÿā§‡ āĻĻāĻŋāϞāĻžāĻŽ"); } // YES - Confirm if (cmd === "yes") { let list = global.unfriendData.pending; if (!list || list.length === 0) return message.reply("❌ āφāϗ⧇ fun 10 āĻŦāĻž fun all āϞāĻŋāĻ–ā§‹"); global.unfriendData.pending = []; global.unfriendData.running = true; global.unfriendData.stop = false; const prog = await message.reply(`âš ī¸ ${list.length} āϜāύāϕ⧇ āφāύāĻĢā§āϰ⧇āĻ¨ā§āĻĄ āĻļ⧁āϰ⧁ āĻšāĻšā§āϛ⧇...\nāĻĨāĻžāĻŽāĻžāϤ⧇: fun stop āϞāĻŋāĻ–ā§‹`); let success = 0, failed = 0; for (let i = 0; i < list.length; i++) { if (global.unfriendData.stop) { await api.editMessage(`🛑 āĻĨ⧇āĻŽā§‡ āϗ⧇āϛ⧇\nâœ”ī¸ āϏāĻĢāϞ: ${success}\n❌ āĻŦā§āϝāĻ°ā§āĻĨ: ${failed}`, prog.messageID); global.unfriendData.running = false; return; } try { await new Promise((res, rej) => api.unfriend(list[i].userID, e => e? rej(e) : res())); success++; } catch { failed++; } try { await api.editMessage( `🔄 āφāύāĻĢā§āϰ⧇āĻ¨ā§āĻĄ āϚāϞāϛ⧇...\n\n👤 āĻāĻ–āύ: ${list[i].fullName}\nâŗ ${i + 1}/${list.length}\nâœ”ī¸ āϏāĻĢāϞ: ${success} | ❌ āĻŦā§āϝāĻ°ā§āĻĨ: ${failed}\n\nāĻĨāĻžāĻŽāĻžāϤ⧇: fun stop`, prog.messageID ); } catch {} await new Promise(r => setTimeout(r, 3000)); // 3 āϏ⧇āϕ⧇āĻ¨ā§āĻĄ āĻ—ā§āϝāĻžāĻĒ, āĻŦā§āϝāĻžāύ āĻ–āĻžāĻŦ⧇ āύāĻž } global.unfriendData.running = false; return api.editMessage(`✅ āφāύāĻĢā§āϰ⧇āĻ¨ā§āĻĄ āĻļ⧇āώ\n\nâœ”ī¸ āϏāĻĢāϞ: ${success} āϜāύ\n❌ āĻŦā§āϝāĻ°ā§āĻĨ: ${failed} āϜāύ`, prog.messageID); } // GET FRIENDS let friends; try { friends = await new Promise((res, rej) => api.getFriendsList((e, d) => e? rej(e) : res(d))); } catch { return message.reply("❌ Friend list āφāύāϤ⧇ āĻĒāĻžāϰāĻŋāύāĻŋ"); } if (cmd === "list") return message.reply(`đŸ‘Ĩ āϤ⧋āĻŽāĻžāϰ āĻŽā§‹āϟ āĻĢā§āϰ⧇āĻ¨ā§āĻĄ: ${friends.length} āϜāύ`); if (!cmd) return message.reply( `📝 āĻŦā§āϝāĻŦāĻšāĻžāϰ:\n` + `fun 10 - āĻĒā§āϰāĻĨāĻŽ 10 āϜāύāϕ⧇ āφāύāĻĢā§āϰ⧇āĻ¨ā§āĻĄ\n` + `fun 50 - āĻĒā§āϰāĻĨāĻŽ 50 āϜāύāϕ⧇\n` + `fun all - āϏāĻŦ āĻĢā§āϰ⧇āĻ¨ā§āĻĄāϕ⧇\n` + `fun list - āĻ•āϤ āĻĢā§āϰ⧇āĻ¨ā§āĻĄ āφāϛ⧇ āĻĻ⧇āĻ–ā§‹\n` + `fun stop - āĻĨāĻžāĻŽāĻžāĻ“\n` + `fun yes - āĻ•āύāĻĢāĻžāĻ°ā§āĻŽ āĻ•āϰ⧋` ); let targetList = []; if (cmd === "all") { targetList = friends; } else if (!isNaN(parseInt(cmd))) { let num = parseInt(cmd); if (num <= 0) return message.reply("❌ āϏāĻ‚āĻ–ā§āϝāĻž āĻ āĻŋāĻ• āĻĻāĻžāĻ“"); if (num > friends.length) num = friends.length; targetList = friends.slice(0, num); } else { return message.reply("❌ āϭ⧁āϞ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ\nfun 10\nfun all\nfun list\nfun stop"); } global.unfriendData.pending = targetList; global.unfriendData.stop = false; return message.reply( `âš ī¸ āϤ⧁āĻŽāĻŋ ${targetList.length} āϜāύāϕ⧇ āφāύāĻĢā§āϰ⧇āĻ¨ā§āĻĄ āĻ•āϰāϤ⧇ āϝāĻžāĻšā§āϛ⧋\n\n` + `āĻĒā§āϰāĻĨāĻŽ 5 āϜāύ:\n${targetList.slice(0, 5).map(f => `â€ĸ ${f.fullName}`).join("\n")}\n${targetList.length > 5? `...āφāϰ⧋ ${targetList.length - 5} āϜāύ` : ""}\n\n` + `āĻ•āύāĻĢāĻžāĻ°ā§āĻŽ āĻ•āϰāϤ⧇: fun yes āϞāĻŋāĻ–ā§‹\nāĻŦāĻžāϤāĻŋāϞ āĻ•āϰāϤ⧇: fun stop āϞāĻŋāĻ–ā§‹` ); } };