// code from goatstore // api: https://store.agi.bd if (!global.siyamTextCooldown) { global.siyamTextCooldown = {}; } module.exports = { config: { name: "copy2", version: "7.0.0", author: "๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐", role: 0, countDown: 5, category: "UTILITY", shortDescription: "Multiplies text safely with smart per-text cooldown", longDescription: "เฆเฆกเฆฎเฆฟเฆจเง‡เฆฐ เฆœเฆจเงเฆฏ เฆ†เฆจเฆฒเฆฟเฆฎเฆฟเฆŸเง‡เฆก เฆเฆฌเฆ‚ เฆธเฆพเฆงเฆพเฆฐเฆฃ เฆ‡เฆ‰เฆœเฆพเฆฐเง‡เฆฐ เฆœเฆจเงเฆฏ เฆเฆ•เฆ‡ เฆŸเง‡เฆ•เงเฆธเฆŸเง‡ เงฉ เฆฎเฆฟเฆจเฆฟเฆŸเง‡เฆฐ เฆ•เงเฆฒเฆกเฆพเฆ‰เฆจ เฆธเฆฟเฆธเงเฆŸเง‡เฆฎเฅค", guide: "copy [text/emoji] [count]\nExample: copy ๐Ÿ”ช 5000" }, onStart: async function ({ api, event, args }) { const { threadID, messageID, senderID } = event; const LOCKED_AUTHOR = "๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐"; if (module.exports.config.author !== LOCKED_AUTHOR) { const lockMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โ›” ๐—™๐—œ๐—Ÿ๐—˜ ๐—Ÿ๐—ข๐—–๐—ž๐—˜๐—— ยป โŒ เฆธเฆฟเฆฏเฆผเฆพเฆฎ เฆญเฆพเฆ‡ เฆเฆฐ เฆจเฆพเฆฎ ยป ๐Ÿคฆ เฆชเฆฐเฆฟเฆฌเฆฐเงเฆคเฆจ เฆ•เฆฐเฆพ เฆนเฆฏเฆผเง‡เฆ›เง‡! ยป โš ๏ธ เฆเฆ‡ เฆ•เฆฎเฆพเฆจเงเฆกเฆŸเฆฟ เฆจเฆทเงเฆŸ เฆ•เฆฐเฆพ เฆนเฆฒเง‹เฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(lockMsg, threadID, messageID); } try { if (args.length < 2) { const usageMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โš ๏ธ เฆฌเงเฆฏเฆฌเฆนเฆพเฆฐ เฆชเฆฆเงเฆงเฆคเฆฟ: ยป ๐Ÿ“ copy [เฆŸเง‡เฆ•เงเฆธเฆŸ/เฆ‡เฆฎเง‹เฆœเฆฟ] ยป โ˜ ๏ธ [เฆธเฆ‚เฆ–เงเฆฏเฆพ] โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿ’ก เฆ‰เฆฆเฆพเฆนเฆฐเฆฃ: ยป ๐Ÿ™„ copy เฆ†เฆฎเฆพเฆฐ เฆฌเฆธ เฆธเฆฟเฆฏเฆผเฆพเฆฎ ยป ๐ŸŽฐ 70 โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(usageMsg, threadID, messageID); } const countStr = args[args.length - 1]; const count = parseInt(countStr); if (isNaN(count) || count <= 0) { const invalidCountMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ เฆญเงเฆฒ เฆธเฆ‚เฆ–เงเฆฏเฆพ! ยป ๐Ÿ”ข เฆเฆ•เฆŸเฆฟ เฆธเฆ เฆฟเฆ• เฆธเฆ‚เฆ–เงเฆฏเฆพ เฆฆเฆฟเฆจ ยป โœ… (เฆฏเง‡เฆฎเฆจ: 1 เฆฅเง‡เฆ•เง‡ 10,000)เฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(invalidCountMsg, threadID, messageID); } if (count > 10000) { const maxCountMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โš ๏ธ เฆ—เฆฐเฆฟเฆฌเง‡เฆฐ เฆฆเฆฒ๐Ÿ˜– ยป โŒ เฆเฆ•เฆธเฆพเฆฅเง‡ เฆธเฆฐเงเฆฌเง‹เฆšเงเฆš 10k ยป ๐Ÿ“‰ เฆฌเฆพเฆฐ เฆ•เฆชเฆฟ เฆ•เฆฐเฆพ เฆฏเฆพเฆฌเง‡เฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(maxCountMsg, threadID, messageID); } args.pop(); const targetText = args.join(" "); if (!targetText) { const noTextMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ เฆ•เง‹เฆจเง‹ เฆŸเง‡เฆ•เงเฆธเฆŸ เฆฌเฆพ ยป โš”๏ธ เฆ‡เฆฎเง‹เฆœเฆฟ เฆฆเฆฟเฆจเฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(noTextMsg, threadID, messageID); } const botAdmins = global.GoatBot?.config?.adminBot || global.config?.ADMINBOT || []; const isBotAdmin = botAdmins.includes(senderID); if (!isBotAdmin && targetText.length > 70) { const limitMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โš ๏ธ ๐—Ÿ๐—œ๐— ๐—œ๐—ง ๐—ช๐—”๐—ฅ๐—ก๐—œ๐—ก๐—š! ยป โŒ เฆคเงเฆ‡ เฆ—เฆฐเฆฟเฆฌ เฆธเฆฐเงเฆฌเง‹เฆšเงเฆš ๐Ÿณ๐Ÿฌ ยป ๐Ÿ˜ เฆฌเงเฆฏเฆฌเฆนเฆพเฆฐ เฆ•เฆฐเฆคเง‡ เฆชเฆพเฆฐเฆฌเฆฟเฅค ยป ๐Ÿ“ เฆ†เฆชเฆจเฆพเฆฐ เฆฌเฆฐเงเฆคเฆฎเฆพเฆจ เฆ…เฆ•เงเฆทเฆฐ ยป ๐Ÿ–ฅ๏ธ เฆธเฆ‚เฆ–เงเฆฏเฆพ: ยป ๐ŸŽฐ ${targetText.length} โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(limitMsg, threadID, messageID); } if (!isBotAdmin) { const currentTime = Date.now(); const cooldownTime = 3 * 60 * 1000; const cooldownKey = `${senderID}_${Buffer.from(targetText).toString("hex").slice(0, 30)}`; if (global.siyamTextCooldown[cooldownKey] && (currentTime - global.siyamTextCooldown[cooldownKey] < cooldownTime)) { const remainingTime = Math.ceil((cooldownTime - (currentTime - global.siyamTextCooldown[cooldownKey])) / 1000); const cooldownMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿšซ ๐——๐˜‚๐—ฝ๐—น๐—ถ๐—ฐ๐—ฎ๐˜๐—ฒ ๐— ๐—ฒ๐˜€๐˜€๐—ฎ๐—ด๐—ฒ ยป โณ ๐—ง๐—ฟ๐˜† ๐—”๐—ด๐—ฎ๐—ถ๐—ป ๐—œ๐—ป ยป ๐Ÿ“‰ ${remainingTime} ยป ๐Ÿ˜Š เฆธเง‡เฆ•เง‡เฆจเงเฆกเฅค ยป ๐Ÿ’Ž เฆ…เฆจเงเฆฏ เฆ•เง‹เฆจเง‹ เฆŸเง‡เฆ•เงเฆธเฆŸ เฆฌเงเฆฏเฆฌเฆนเฆพเฆฐ ยป โœ… เฆ•เฆฐเงเฆจเฅค โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; return api.sendMessage(cooldownMsg, threadID, messageID); } global.siyamTextCooldown[cooldownKey] = currentTime; } let repeatedResult = Array(count).fill(targetText).join(" "); const MAX_LENGTH = 1900; let messageChunks = []; while (repeatedResult.length > 0) { if (repeatedResult.length > MAX_LENGTH) { let chunk = repeatedResult.substring(0, MAX_LENGTH); messageChunks.push(chunk); repeatedResult = repeatedResult.substring(MAX_LENGTH); } else { messageChunks.push(repeatedResult); repeatedResult = ""; } } for (let i = 0; i < messageChunks.length; i++) { await api.sendMessage(messageChunks[i], threadID); if (messageChunks.length > 1) { await new Promise(resolve => setTimeout(resolve, 1500)); } } } catch (err) { console.error("Copy Command Error:", err); const errorMsg = `ยป ๐Ÿ‘‘ ๐’๐ˆ๐˜๐€๐Œ-๐‡๐€๐’๐€๐ ๐Ÿ‘‘ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป โŒ เฆ…เฆญเงเฆฏเฆจเงเฆคเฆฐเง€เฆฃ เฆธเฆฎเฆธเงเฆฏเฆพ! ยป ๐Ÿ’ฅ เฆซเฆพเฆ‡เฆฒ เฆ•เงเฆฐเฆพเฆถ เฆเฆกเฆผเฆพเฆจเง‹ ยป ๐ŸŽ€ เฆนเฆฏเฆผเง‡เฆ›เง‡: ${err.message} โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ ยป ๐Ÿงšโ€โ™€๏ธ โ€ฟ๐—ก๐—œ๐—๐—›๐—จ๐—  ๐—–๐—›๐—”๐—ง๐—•๐—ข๐—ง`; api.sendMessage(errorMsg, threadID, messageID); } } };