goat
command
wingoMoney
Wingo betting game
0
views
0
likes
0
installs
Aliases: wingo, wg
raw source
module.exports = {
config: {
name: "wingoMoney",
aliases: ["wingo", "wg"],
version: "1.8.0",
author: "Rahat Mahmud | Azadx69x",
role: 0,
category: "game",
shortDescription: "Wingo betting game",
usages: "wg daily | wg bet <amount> <red/green/big/small> | wg leaderboard"
},
onStart: async function ({ api, event, args, prefix, usersData }) {
const userID = event.senderID;
let user = await usersData.get(userID) || {};
if (typeof user.money !== "number") user.money = 0;
const styleText = (text) => {
const bold = {
"A":"๐","B":"๐","C":"๐","D":"๐","E":"๐","F":"๐","G":"๐","H":"๐","I":"๐","J":"๐","K":"๐","L":"๐","M":"๐ ",
"N":"๐ก","O":"๐ข","P":"๐ฃ","Q":"๐ค","R":"๐ฅ","S":"๐ฆ","T":"๐ง","U":"๐จ","V":"๐ฉ","W":"๐ช","X":"๐ซ","Y":"๐ฌ","Z":"๐ญ",
"a":"๐ฎ","b":"๐ฏ","c":"๐ฐ","d":"๐ฑ","e":"๐ฒ","f":"๐ณ","g":"๐ด","h":"๐ต","i":"๐ถ","j":"๐ท","k":"๐ธ","l":"๐น","m":"๐บ",
"n":"๐ป","o":"๐ผ","p":"๐ฝ","q":"๐พ","r":"๐ฟ","s":"๐","t":"๐","u":"๐","v":"๐","w":"๐","x":"๐
","y":"๐","z":"๐",
"0":"๐ฌ","1":"๐ญ","2":"๐ฎ","3":"๐ฏ","4":"๐ฐ","5":"๐ฑ","6":"๐ฒ","7":"๐ณ","8":"๐ด","9":"๐ต",
".":"โ","$":"$"
};
return text.split("").map(c => bold[c] || c).join("");
};
const formatMoney = (n) => {
let str;
if (n >= 1_000_000) str = (n / 1_000_000).toFixed(2) + "M$";
else if (n >= 1_000) str = (n / 1_000).toFixed(2) + "K$";
else str = n + "$";
return styleText(str);
};
if (args[0] === "daily") {
if (Date.now() - (user.lastDaily || 0) < 86400000)
return api.sendMessage(styleText("โณ Daily already claimed!"), event.threadID);
user.money += 100;
user.lastDaily = Date.now();
await usersData.set(userID, user);
return api.sendMessage(
styleText(`๐ Daily Reward: +100$\n๐ณ Balance: ${formatMoney(user.money)} (${styleText(user.money+"$")})`),
event.threadID
);
}
if (args[0] === "leaderboard") {
const all = await usersData.getAll();
const list = all
.filter(u => typeof u.data?.money === "number")
.sort((a, b) => b.data.money - a.data.money)
.slice(0, 10);
let msg = styleText("๐ Wingo Leaderboard ๐\n\n");
list.forEach((u, i) => {
msg += styleText(`${i + 1}. ${u.userID} โ ${formatMoney(u.data.money)}\n`);
});
return api.sendMessage(msg, event.threadID);
}
if (args[0] === "bet") {
const amount = Number(args[1]);
const option = args[2];
if (!amount || amount <= 0)
return api.sendMessage(
styleText(`โ Invalid amount!\nUsage: ${prefix}wg bet <amount> <red/green/big/small>`),
event.threadID
);
if (!["red", "green", "big", "small"].includes(option))
return api.sendMessage(styleText("โ Invalid option!"), event.threadID);
if (user.money < amount)
return api.sendMessage(
styleText(`โ Not enough balance!\n๐ณ Balance: ${formatMoney(user.money)}`),
event.threadID
);
user.money -= amount;
await usersData.set(userID, user);
api.sendMessage(styleText("๐ฐ Wingo started...\nโณ Wait 5 seconds"), event.threadID, async (err, info) => {
if (err) return;
setTimeout(async () => {
const num = Math.floor(Math.random() * 10);
const color =
[1, 3, 7, 9].includes(num) ? "RED" :
[2, 4, 6, 8].includes(num) ? "GREEN" : "VIOLET";
const size = num >= 5 ? "BIG" : "SMALL";
let resultMsg = styleText("โโโโโโ๐ฏ Result โโโโโโ\n");
resultMsg += styleText(`โ ๐ข Number: ${num}\n`);
resultMsg += styleText(`โ ๐จ Color: ${color}\n`);
resultMsg += styleText(`โ ๐ Size: ${size}\n`);
resultMsg += styleText("โ\n");
const win = option === color.toLowerCase() || option === size.toLowerCase();
if (win) {
user.money += amount * 2;
resultMsg += styleText(`โ ๐ You Win! ${amount}\n`);
resultMsg += styleText(`โ ๐ณ Balance: ${formatMoney(user.money)} (${user.money}$)\n`);
} else {
resultMsg += styleText(`โ ๐ข You Lose! ${amount}\n`);
resultMsg += styleText(`โ ๐ณ Balance: ${formatMoney(user.money)} (${user.money}$)\n`);
}
resultMsg += styleText("โโโโโโโโโโโโโโโโโโโ");
await usersData.set(userID, user);
api.editMessage(resultMsg, info.messageID, event.threadID);
}, 5000);
});
return;
}
return api.sendMessage(
styleText(
`๐ฐ Wingo Menu\n\n` +
`${prefix}wg daily\n` +
`${prefix}wg bet <amount> <red/green/big/small>\n` +
`${prefix}wg leaderboard`
),
event.threadID
);
}
};