const axios = require('axios'); const fs = require('fs'); const path = require('path'); const urlGdpsFilePath = path.join(__dirname, 'gdps', 'urlgdps.json'); let urlGdpsData = {}; if (fs.existsSync(urlGdpsFilePath)) { const rawData = fs.readFileSync(urlGdpsFilePath); urlGdpsData = JSON.parse(rawData); } module.exports.config = { name: "profile", version: "1.0.0", hasPermission: 0, description: "Get user gdps information", usePrefix: true, cooldowns: 20, commandCategory: "GDPS", }; module.exports.run = async function ({ api, event, args }) { const { threadID, messageID } = event; const username = encodeURIComponent(args[0]); if (!username) return api.sendMessage("Please provide a username.", threadID, messageID); try { if (!urlGdpsData.hasOwnProperty(threadID)) { return api.sendMessage("❌ | This group chat is not registered. Please register a GDPS URL first using !gdpsreg | .", threadID, messageID); } const { url: gdpsUrl, name: gdpsName } = urlGdpsData[threadID]; const waitMessage = await api.sendMessage("πŸ” | 𝖒𝗁𝖾𝖼𝗄𝗂𝗇𝗀...", threadID, messageID); const response = await axios.get(`https://gdpsapibyjonellccprojects.adaptable.app/api/player?user=${username}&link=${gdpsUrl}`); const data = response.data; if (!data.Name) { return api.sendMessage("❌ | The specified user does not exist.", threadID, messageID); } const formattedResponse = `${gdpsName} 𝖲𝖾𝗋𝗏𝖾𝗋 𝖯𝗅𝖺𝗒𝖾𝗋 π–²π—π–Ίπ—π—Œ\n━━━━━━━━━━━━━━━━━━\n 𝖭𝖺𝗆𝖾: ${data.Name} π–΄π—Œπ–Ύπ—‹ 𝖨𝖣: ${data["User ID"]} π– π–Όπ–’π—ˆπ—Žπ—‡π— 𝖨𝖣: ${data["Account ID"]} π–²π—π–Ίπ—‹π—Œ: ${data.Stars} π–’π—ˆπ—‚π—‡π—Œ: ${data.Coins} π–΄π—Œπ–Ύπ—‹ π–’π—ˆπ—‚π—‡π—Œ: ${data["User Coins"]} π–£π—‚π–Ίπ—†π—ˆπ—‡π–½π—Œ: ${data.Diamonds} π–’π—‹π–Ύπ–Ίπ—π—ˆπ—‹ π–―π—ˆπ—‚π—‡π—π—Œ: ${data["Creator points"]} π–«π–Ύπ–Ίπ–½π–Ύπ—‹π–»π—ˆπ–Ίπ—‹π–½π—Œ 𝖱𝖺𝗇𝗄: ${data["Leaderboards rank"]} π–’π—‹π–Ύπ–Ίπ—π—ˆπ—‹ π–«π–Ύπ–Ίπ–½π–Ύπ—‹π–»π—ˆπ–Ίπ—‹π–½π—Œ 𝖱𝖺𝗇𝗄: ${data["Creator leaderboards rank"]} π–£π—‚π—Œπ–Όπ—ˆπ—‹π–½: ${data.Discord}`; await api.editMessage(formattedResponse, waitMessage.messageID, threadID, messageID); } catch (error) { console.error(error); api.editMessage(error.message, waitMessage.messageID, threadID, messageID); } };