1
Fork 0
mirror of https://github.com/wlinator/luminara.git synced 2024-10-02 20:23:12 +00:00

/leaderboard fallback

This commit is contained in:
wlinator 2023-06-21 09:05:09 -04:00
parent eb87e658a1
commit ab0573b2fa
2 changed files with 23 additions and 21 deletions

View file

@ -1,5 +1,6 @@
import time import time
import discord
from discord.ext import commands from discord.ext import commands
from data.Currency import Currency from data.Currency import Currency
@ -88,7 +89,28 @@ class Leveling(commands.Cog):
@commands.check(universal.channel_check) @commands.check(universal.channel_check)
async def leaderboard(self, ctx): async def leaderboard(self, ctx):
leaderboard = Xp.load_leaderboard() leaderboard = Xp.load_leaderboard()
embed = await embeds.leaderboard_message(ctx, leaderboard)
embed = discord.Embed(
color=0xadcca6
)
embed.set_author(name="Rave Cave Leaderboard",
icon_url="https://cdn.discordapp.com/icons/719227135151046699/"
"49df8c284382af9dbcfd629c8eadc52c.webp?size=96")
embed.set_footer(text=f"Do /level to see your rank.")
embed.set_thumbnail(url="https://i.imgur.com/79XfsbS.png")
for i, (user_id, xp, level, rank, xp_needed_for_next_level) in enumerate(leaderboard[:5], start=1):
try:
member = await ctx.guild.fetch_member(user_id)
name = member.name
except:
name = "Unknown User"
embed.add_field(
name=f"#{rank} - {name}",
value=f"level: `{level}`\nxp: `{xp}/{xp_needed_for_next_level}`",
inline=False
)
await ctx.respond(embed=embed) await ctx.respond(embed=embed)

View file

@ -123,23 +123,3 @@ def level_command_message(ctx, level, xp, next_level_xp, rank):
embed.set_footer(text=f"The Rave Cave | Server Rank: #{rank}") embed.set_footer(text=f"The Rave Cave | Server Rank: #{rank}")
embed.set_thumbnail(url=ctx.author.avatar.url) embed.set_thumbnail(url=ctx.author.avatar.url)
return embed return embed
async def leaderboard_message(ctx, leaderboard):
embed = discord.Embed(
color=0xadcca6
)
embed.set_author(name="Rave Cave Leaderboard",
icon_url="https://cdn.discordapp.com/icons/719227135151046699/"
"49df8c284382af9dbcfd629c8eadc52c.webp?size=96")
embed.set_footer(text=f"Do /level to see your rank.")
embed.set_thumbnail(url="https://i.imgur.com/79XfsbS.png")
for i, (user_id, xp, level, rank, xp_needed_for_next_level) in enumerate(leaderboard[:5], start=1):
member = await ctx.guild.fetch_member(user_id)
embed.add_field(
name=f"#{rank} - {member.name}",
value=f"level: `{level}`\nxp: `{xp}/{xp_needed_for_next_level}`",
inline=False
)
return embed