Skip to content

Instantly share code, notes, and snippets.

@dipto-008
Created July 10, 2025 02:27
Show Gist options
  • Save dipto-008/6680eb5491d7ed4d61ad3f95a5fbe802 to your computer and use it in GitHub Desktop.
Save dipto-008/6680eb5491d7ed4d61ad3f95a5fbe802 to your computer and use it in GitHub Desktop.
Hey noob ๐Ÿ‘‹๐Ÿ‘‹
const fs = require("fs-extra");
const { utils } = global;
module.exports = {
config: {
name: "prefix",
version: "1.5",
author: " BaYjid",
countDown: 5,
role: 0,
description: "๐Ÿ› ๏ธ ๐‚๐ก๐š๐ง๐ ๐ž ๐ญ๐ก๐ž ๐›๐จ๐ญ ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ข๐ง ๐ฒ๐จ๐ฎ๐ซ ๐œ๐ก๐š๐ญ ๐›๐จ๐ฑ ๐จ๐ซ ๐ญ๐ก๐ž ๐ž๐ง๐ญ๐ข๐ซ๐ž ๐ฌ๐ฒ๐ฌ๐ญ๐ž๐ฆ (๐จ๐ง๐ฅ๐ฒ ๐›๐จ๐ญ ๐š๐๐ฆ๐ข๐ง)",
category: "โš™๏ธ ๐‚๐จ๐ง๐Ÿ๐ข๐ ๐ฎ๐ซ๐š๐ญ๐ข๐จ๐ง",
guide: {
en:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿ“Œ {pn} <new prefix>: ๐‚๐ก๐š๐ง๐ ๐ž ๐ญ๐ก๐ž ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ข๐ง ๐ฒ๐จ๐ฎ๐ซ ๐œ๐ก๐š๐ญ ๐›๐จ๐ฑ\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿ“ ๐„๐ฑ๐š๐ฆ๐ฉ๐ฅ๐ž:\n"
+ "๐Ÿ”น {pn} #\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿ“Œ {pn} <new prefix> -g: ๐‚๐ก๐š๐ง๐ ๐ž ๐ญ๐ก๐ž ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ข๐ง ๐ญ๐ก๐ž ๐ž๐ง๐ญ๐ข๐ซ๐ž ๐ฌ๐ฒ๐ฌ๐ญ๐ž๐ฆ (๐จ๐ง๐ฅ๐ฒ ๐›๐จ๐ญ ๐š๐๐ฆ๐ข๐ง)\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿ“ ๐„๐ฑ๐š๐ฆ๐ฉ๐ฅ๐ž:\n"
+ "๐Ÿ”น {pn} # -g\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿ› ๏ธ {pn} reset: ๐‘๐ž๐ฌ๐ž๐ญ ๐ฒ๐จ๐ฎ๐ซ ๐œ๐ก๐š๐ญ ๐›๐จ๐ฑ ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ญ๐จ ๐๐ž๐Ÿ๐š๐ฎ๐ฅ๐ญ\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”"
}
},
langs: {
en: {
reset:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "โœ… ๐˜๐จ๐ฎ๐ซ ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ก๐š๐ฌ ๐›๐ž๐ž๐ง ๐ซ๐ž๐ฌ๐ž๐ญ ๐ญ๐จ ๐๐ž๐Ÿ๐š๐ฎ๐ฅ๐ญ: %1\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”",
onlyAdmin:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "โš ๏ธ ๐Ž๐ง๐ฅ๐ฒ ๐š๐๐ฆ๐ข๐ง ๐œ๐š๐ง ๐œ๐ก๐š๐ง๐ ๐ž ๐ญ๐ก๐ž ๐ฌ๐ฒ๐ฌ๐ญ๐ž๐ฆ ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ!\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”",
confirmGlobal:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿ”„ ๐๐ฅ๐ž๐š๐ฌ๐ž ๐ซ๐ž๐š๐œ๐ญ ๐ญ๐จ ๐ญ๐ก๐ข๐ฌ ๐ฆ๐ž๐ฌ๐ฌ๐š๐ ๐ž ๐ญ๐จ ๐œ๐จ๐ง๐Ÿ๐ข๐ซ๐ฆ ๐œ๐ก๐š๐ง๐ ๐ข๐ง๐  ๐ญ๐ก๐ž ๐ฌ๐ฒ๐ฌ๐ญ๐ž๐ฆ ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ.\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”",
confirmThisThread:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿ”„ ๐๐ฅ๐ž๐š๐ฌ๐ž ๐ซ๐ž๐š๐œ๐ญ ๐ญ๐จ ๐ญ๐ก๐ข๐ฌ ๐ฆ๐ž๐ฌ๐ฌ๐š๐ ๐ž ๐ญ๐จ ๐œ๐จ๐ง๐Ÿ๐ข๐ซ๐ฆ ๐œ๐ก๐š๐ง๐ ๐ข๐ง๐  ๐ญ๐ก๐ž ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ข๐ง ๐ฒ๐จ๐ฎ๐ซ ๐œ๐ก๐š๐ญ ๐ ๐ซ๐จ๐ฎ๐ฉ.\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”",
successGlobal:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "โœ… ๐’๐ฒ๐ฌ๐ญ๐ž๐ฆ ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ก๐š๐ฌ ๐›๐ž๐ž๐ง ๐œ๐ก๐š๐ง๐ ๐ž๐ ๐ญ๐จ: %1\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”",
successThisThread:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "โœ… ๐‚๐ก๐š๐ญ ๐ ๐ซ๐จ๐ฎ๐ฉ ๐ฉ๐ซ๐ž๐Ÿ๐ข๐ฑ ๐ก๐š๐ฌ ๐›๐ž๐ž๐ง ๐œ๐ก๐š๐ง๐ ๐ž๐ ๐ญ๐จ: %1\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”",
myPrefix:
"โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
+ "๐Ÿฆ† ๐š‚๐šˆ๐š‚๐šƒ๐™ด๐™ผ ๐™ฟ๐š๐™ด๐™ต๐™ธ๐š‡: %1\n"
+ "๐Ÿ’ฌ ๐šˆ๐™พ๐š„๐š ๐™ถ๐š๐™พ๐š„๐™ฟ ๐™ฟ๐š๐™ด๐™ต๐™ธ๐š‡: %2\n"
+ "โฐ ๐š‚๐™ด๐š๐š…๐™ด๐š ๐šƒ๐™ธ๐™ผ๐™ด: %3\n"
+ "โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”\n"
}
},
onStart: async function ({ message, role, args, commandName, event, threadsData, getLang }) {
if (!args[0]) return message.SyntaxError();
if (args[0] === "reset") {
await threadsData.set(event.threadID, null, "data.prefix");
return message.reply(getLang("reset", global.GoatBot.config.prefix));
}
const newPrefix = args[0];
const formSet = {
commandName,
author: event.senderID,
newPrefix,
setGlobal: args[1] === "-g"
};
if (formSet.setGlobal && role < 2) {
return message.reply(getLang("onlyAdmin"));
}
const confirmMessage = formSet.setGlobal ? getLang("confirmGlobal") : getLang("confirmThisThread");
return message.reply(confirmMessage, (err, info) => {
formSet.messageID = info.messageID;
global.GoatBot.onReaction.set(info.messageID, formSet);
});
},
onReaction: async function ({ message, threadsData, event, Reaction, getLang }) {
const { author, newPrefix, setGlobal } = Reaction;
if (event.userID !== author) return;
if (setGlobal) {
global.GoatBot.config.prefix = newPrefix;
fs.writeFileSync(global.client.dirConfig, JSON.stringify(global.GoatBot.config, null, 2));
return message.reply(getLang("successGlobal", newPrefix));
}
await threadsData.set(event.threadID, newPrefix, "data.prefix");
return message.reply(getLang("successThisThread", newPrefix));
},
onChat: async function ({ event, message, getLang }) {
if (event.body && event.body.toLowerCase() === "prefix") {
const serverTime = new Date().toLocaleString("en-US", { timeZone: "Asia/Dhaka" });
return message.reply(getLang("myPrefix", global.GoatBot.config.prefix, utils.getPrefix(event.threadID), serverTime));
}
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment