diff options
author | Samot19 <81269200+Samot19@users.noreply.github.com> | 2021-07-02 23:06:58 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-02 23:06:58 +0000 |
commit | 1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f (patch) | |
tree | ea95b37e408897e93a073e1cec4566274f6c59bb /cogs/utils.py | |
parent | a7fabb623259d0137bb1c8b19000c0c4ec12232b (diff) | |
download | steve-bot-1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f.tar steve-bot-1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f.tar.gz steve-bot-1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f.tar.bz2 steve-bot-1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f.tar.lz steve-bot-1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f.tar.xz steve-bot-1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f.tar.zst steve-bot-1ac7afde5a7db52ace1f8225ebb7b08e81ffdd1f.zip |
Add support for boomers
Make it so that fboard doesn't break with a userid length that isn't 18 (troll's 17 for example).
Diffstat (limited to '')
-rwxr-xr-x | cogs/utils.py | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/cogs/utils.py b/cogs/utils.py index 8bffa43..188844e 100755 --- a/cogs/utils.py +++ b/cogs/utils.py @@ -561,12 +561,12 @@ class Utils(commands.Cog): # String the requested info with its respective user and store it in our list if requested.lower() == "day": for user in fair: - leaderboard.append(str(fair[user]["day"]) + user) + leaderboard.append(str(fair[user]["day"]) + " " + user) flag = "Day" elif requested.lower() == "streak": for user in fair: - leaderboard.append(str(fair[user]["streak"]) + user) + leaderboard.append(str(fair[user]["streak"]) + " " + user) flag = "Streak" else: @@ -574,7 +574,7 @@ class Utils(commands.Cog): return # Sort the "info + user" strings as ints. - leaderboard.sort(reverse=True, key=int) + leaderboard.sort(reverse=True, key=lambda pair: int(pair.split(" ")[0] + pair.split(" ")[1][:10])) text = "" embed = discord.Embed( @@ -586,8 +586,8 @@ class Utils(commands.Cog): # Get the top 10 entries and extract the info and user from each string for i in range(10): - entry = leaderboard[i][:-18] - userstr = leaderboard[i][-18:] + entry = leaderboard[i].split(" ")[0] + userstr = leaderboard[i].split(" ")[1] #If caller is in top 10, then we highlight their entry if str(callerid) == userstr: text += f"**{i+1}. {self.bot.get_user(int(userstr))}: {entry}** \n" @@ -610,7 +610,7 @@ class Utils(commands.Cog): right = len(leaderboard) while left < right: middle = floor((left + right)/2) - if int(leaderboard[middle][:-18]) > value: + if int(leaderboard[middle].split(" ")[0]) > value: left = middle + 1 else: right = middle @@ -622,7 +622,7 @@ class Utils(commands.Cog): right = len(leaderboard) while left < right: middle = floor((left + right)/2) - if int(leaderboard[middle][:-18]) < value: + if int(leaderboard[middle].split(" ")[0]) < value: right = middle else: left = middle + 1 @@ -636,16 +636,16 @@ class Utils(commands.Cog): right = rightIndex while left <= right: middle = floor((left + right)/2) - if int(leaderboard[middle][-18:]) > callerid: + if int(leaderboard[middle].split(" ")[1]) > callerid: left = middle + 1 - elif int(leaderboard[middle][-18:]) < callerid: + elif int(leaderboard[middle].split(" ")[1]) < callerid: right = middle - 1 else: callerIndex = middle break - entry = leaderboard[callerIndex][:-18] - userstr = leaderboard[callerIndex][-18:] + entry = leaderboard[callerIndex].split(" ")[0] + userstr = leaderboard[callerIndex].split(" ")[1] #If caller is the 11th place on the leaderboard, highlight their entry. if callerIndex == 10: |