I was trying to create a Overall Leaderboard about casino, The thing is when I add the 2 data which are the wallet and bank and Its working. The problem is its not descending.
Here's my code:
economy.find({
guildID: message.guild.id
}).sort([['wallet \+ bank', "descending"]])
.exec((err, res) => {
if(err) console.log(err);
let embed = new MessageEmbed()
.setTitle("Overall Leaderboard")
if(res.length === 0) {
embed.setColor('RANDOM')
embed.addField("ERROR", "No data found!")
} else if(res.length < 10) {
embed.setColor('RANDOM')
for(i = 0; i < res.length; i++) {
let member = message.guild.members.cache.get(res[i].userID) || "Former Member"
if(member === undefined) {
return message.reply("There's no players.")
} else if(member === "Former Member") {
var a = res[i].wallet
var b = res[i].bank
var total = parseInt(a) + parseInt(b)
embed.addField(`${i+1}. ${member}`, `Total: $${total.toLocaleString()}`)
} else {
var a = res[i].wallet
var b = res[i].bank
var total = parseInt(a) + parseInt(b)
embed.addField(`${i+1}. ${member.user.username}`, `Total: $${total.toLocaleString()}`)
}
}
} else {
embed.setColor("RANDOM")
for(i = 0; i < 10; i++) {
let member = message.guild.members.cache.get(res[i].userID) || "Former Member"
if(member === undefined) {
return message.reply("There's no players.")
} else if(member === "Former Member") {
var a = res[i].wallet
var b = res[i].bank
var total = parseInt(a) + parseInt(b)
embed.addField(`${i+1}. ${member}`, `Total: $${total.toLocaleString()}`)
} else {
var a = res[i].wallet
var b = res[i].bank
var total = parseInt(a) + parseInt(b)
embed.addField(`${i+1}. ${member.user.username}`, `Total: $${total.toLocaleString()}`)
}
}
}
message.channel.send({embeds: [embed]})
})