mirror of https://github.com/stijndcl/didier
Add percentage to Message counter & leaderboard
parent
f25bb468b4
commit
6a946559e2
|
@ -10,7 +10,6 @@ import math
|
|||
import requests
|
||||
|
||||
|
||||
|
||||
# TODO some sort of general leaderboard because all of them are the same
|
||||
class Leaderboards(commands.Cog):
|
||||
|
||||
|
@ -156,15 +155,20 @@ class Leaderboards(commands.Cog):
|
|||
async def messages(self, ctx):
|
||||
s = stats.getAllRows()
|
||||
boardTop = []
|
||||
|
||||
message_count = stats.getTotalMessageCount()
|
||||
|
||||
for i, user in enumerate(sorted(s, key=lambda x: x[11], reverse=True)):
|
||||
if int(user[11]) == 0:
|
||||
break
|
||||
|
||||
perc = round(int(user[11]) * 100 / message_count, 2)
|
||||
|
||||
name = self.utilsCog.getDisplayName(ctx, user[0])
|
||||
if int(user[0]) == int(ctx.author.id):
|
||||
boardTop.append("**{} ({:,})**".format(name, round(int(user[11]))))
|
||||
boardTop.append("**{} ({:,} | {}%)**".format(name, round(int(user[11])), perc))
|
||||
else:
|
||||
boardTop.append("{} ({:,})".format(name, round(int(user[11]))))
|
||||
boardTop.append("{} ({:,} | {}%)".format(name, round(int(user[11])), perc))
|
||||
await self.startPaginated(ctx, boardTop, "Messages Leaderboard")
|
||||
|
||||
@leaderboard.command(name="Muttn", aliases=["M", "Mutn", "Mutten"], hidden=True)
|
||||
|
|
|
@ -22,9 +22,13 @@ class Xp(commands.Cog):
|
|||
|
||||
target_stats = stats.getOrAddUser(target.id)
|
||||
|
||||
message_count = stats.getTotalMessageCount()
|
||||
|
||||
perc = round(int(target_stats[11]) * 100/message_count, 2)
|
||||
|
||||
embed = discord.Embed(colour=discord.Colour.blue())
|
||||
embed.set_author(name=target.display_name, icon_url=target.avatar_url)
|
||||
embed.add_field(name="Aantal Berichten", value="{}".format(int(target_stats[11])))
|
||||
embed.add_field(name="Aantal Berichten", value="{} ({}%)".format(int(target_stats[11]), perc))
|
||||
embed.add_field(name="Level", value=str(xp.calculate_level(target_stats[12])))
|
||||
embed.add_field(name="XP", value="{:,}".format(int(target_stats[12])))
|
||||
embed.set_footer(text="*Sinds Didier 2.0 Launch")
|
||||
|
|
|
@ -107,6 +107,12 @@ def gainXp(user, user_db):
|
|||
update(user, "last_message", round(time.time()))
|
||||
|
||||
|
||||
def getTotalMessageCount():
|
||||
r = getAllRows()
|
||||
|
||||
return sum(user[11] for user in r)
|
||||
|
||||
|
||||
def getOrAddChannel(channelid: int):
|
||||
connection = utils.connect()
|
||||
cursor = connection.cursor()
|
||||
|
|
Loading…
Reference in New Issue