goat
command
set
Admin data management
0
views
0
likes
0
installs
raw source
module.exports = {
config: {
name: "set",
version: "2.0",
author: "xnil6x",
shortDescription: "Admin data management",
longDescription: "Set user money, exp, or custom variables (admin only)",
category: "Admin",
guide: {
en: "{p}set money [amount] [@user]\n{p}set exp [amount] [@user]\n{p}set custom [variable] [value] [@user]"
},
role: 2
},
onStart: async function ({ api, event, args, usersData }) {
try {
const ADMIN_UIDS = ["100075351099099", "61588709641268"];
if (!ADMIN_UIDS.includes(event.senderID.toString())) {
return api.sendMessage("๐๐๐๐ ๐๐๐๐ ๐๐๐๐ ๐๐ ๐๐๐ ๐๐๐๐๐ ๐๐๐ ๐๐ ๐๐๐๐ ๐๐๐๐๐๐ผ", event.threadID);
}
const action = args[0]?.toLowerCase();
const amount = parseFloat(args[1]);
const targetID = Object.keys(event.mentions)[0] || event.senderID;
const userData = await usersData.get(targetID);
if (!userData) {
return api.sendMessage("โ User not found in database", event.threadID);
}
switch (action) {
case 'money':
if (isNaN(amount)) return api.sendMessage("โ Invalid amount", event.threadID);
await usersData.set(targetID, { money: amount });
return api.sendMessage(`๐ฐ Set money to ${amount} for ${userData.name}`, event.threadID);
case 'exp':
if (isNaN(amount)) return api.sendMessage("โ Invalid amount", event.threadID);
await usersData.set(targetID, { exp: amount });
return api.sendMessage(`๐ Set exp to ${amount} for ${userData.name}`, event.threadID);
case 'custom':
const variable = args[1];
const value = args[2];
if (!variable || value === undefined) {
return api.sendMessage("โ Usage: {p}set custom [variable] [value] [@user]", event.threadID);
}
await usersData.set(targetID, { [variable]: value });
return api.sendMessage(`๐ง Set ${variable} to ${value} for ${userData.name}`, event.threadID);
default:
return api.sendMessage("โ Invalid action. Available options: money, exp, custom", event.threadID);
}
} catch (error) {
console.error("Admin Set Error:", error);
return api.sendMessage("โ ๏ธ Command failed: " + error.message, event.threadID);
}
}
};