Compare commits
4
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f84e2eef29 | ||
|
|
b4eb5ab6d1 | ||
|
|
1ae6a4a223 | ||
|
|
e1a429c42a |
@@ -61,12 +61,11 @@ class SubmissionListener(commands.Cog, name="Message Listener"):
|
|||||||
score = message.content
|
score = message.content
|
||||||
if is_time_record:
|
if is_time_record:
|
||||||
# standardize time score format.
|
# standardize time score format.
|
||||||
# add colon if its not there
|
# strip leading 0s and colon
|
||||||
|
# then add colon if its not there
|
||||||
|
score = score.lstrip("0:")
|
||||||
if score.find(":") == -1:
|
if score.find(":") == -1:
|
||||||
score = "00:" + score
|
score = "0:" + score
|
||||||
# add a 0 if there isn't 2 digits before a colon
|
|
||||||
elif len(score.split(":", maxsplit=1)[0]) < 2:
|
|
||||||
score = "0" + score
|
|
||||||
submission_objects[message.author.id]["score"] = score
|
submission_objects[message.author.id]["score"] = score
|
||||||
embed = get_submission_embed(message.author.id)
|
embed = get_submission_embed(message.author.id)
|
||||||
|
|
||||||
|
|||||||
@@ -189,6 +189,11 @@ class SubmissionCreateButton(nextcord.ui.View):
|
|||||||
self, button: nextcord.ui.Button, interaction: nextcord.Interaction
|
self, button: nextcord.ui.Button, interaction: nextcord.Interaction
|
||||||
): # pylint: disable=unused-argument
|
): # pylint: disable=unused-argument
|
||||||
"""Button for score submission."""
|
"""Button for score submission."""
|
||||||
|
# Don't allow a user to start a new submission if one already exists
|
||||||
|
if interaction.user.id in submission_objects:
|
||||||
|
await interaction.send("Please finish in progress submission first.", ephemeral=True)
|
||||||
|
return
|
||||||
|
|
||||||
guild_id_str = str(interaction.guild.id)
|
guild_id_str = str(interaction.guild.id)
|
||||||
guild_data = highscores_data[guild_id_str]
|
guild_data = highscores_data[guild_id_str]
|
||||||
|
|
||||||
|
|||||||
+8
-10
@@ -36,13 +36,16 @@ def format_highscore_message(boss_name: str, guild_data: dict):
|
|||||||
username: str = score_pair[0].ljust(guild_data["username_length"], " ")
|
username: str = score_pair[0].ljust(guild_data["username_length"], " ")
|
||||||
score: str = str(score_pair[1])
|
score: str = str(score_pair[1])
|
||||||
|
|
||||||
|
# pad score to correct length
|
||||||
|
# MM:SS.ms is 7 characters long
|
||||||
if highscores_config["categories"][key]["is_time_record"]:
|
if highscores_config["categories"][key]["is_time_record"]:
|
||||||
# pad score to correct length
|
# if there are single digit minutes, add a space for formatting.
|
||||||
# MM:SS.ms is 7 characters long
|
if score.find(":") and len(score.split(":", maxsplit=1)[0]) < 2:
|
||||||
score = score.ljust(7, " ")
|
score = " " + score
|
||||||
|
else:
|
||||||
|
score = score.rjust(7, " ")
|
||||||
|
|
||||||
line_str = f"{i+1}: {username} - "
|
ret_string += f"{i+1}: {username} - {score}".ljust(26, " ")
|
||||||
ret_string += line_str + score.rjust(26 - len(line_str) - 1) + " "
|
|
||||||
else:
|
else:
|
||||||
ret_string += f"{i+1}: submit your score".ljust(26, " ")
|
ret_string += f"{i+1}: submit your score".ljust(26, " ")
|
||||||
ret_string += "\n"
|
ret_string += "\n"
|
||||||
@@ -144,11 +147,6 @@ async def submit_score(
|
|||||||
reverse=not boss_category_config["ascending"],
|
reverse=not boss_category_config["ascending"],
|
||||||
)
|
)
|
||||||
|
|
||||||
# enforce highscore size
|
|
||||||
while len(scores) > highscores_config["highscore_size"]:
|
|
||||||
scores.pop()
|
|
||||||
guild_data["tables"][boss_name]["categories"][category] = scores
|
|
||||||
|
|
||||||
# edit message
|
# edit message
|
||||||
highscore_channel_id = guild_data["highscore_channel_id"]
|
highscore_channel_id = guild_data["highscore_channel_id"]
|
||||||
print(f"Editting message {highscore_channel_id}")
|
print(f"Editting message {highscore_channel_id}")
|
||||||
|
|||||||
Reference in New Issue
Block a user