Add server-side ELO ratings
This commit is contained in:
@@ -52,23 +52,21 @@ func _ready() -> void:
|
||||
func on_show(_payload: Variant = null) -> void:
|
||||
_reset_qbank_confirmation()
|
||||
var profile := ProfileService.get_profile()
|
||||
var xp_into := ProgressionService.xp_into_level(int(profile["xp"]))
|
||||
var text := "[b]Level %d[/b]\n%d total XP (%d/%d to next level)\nCurrent streak: %d\nBest streak: %d\nToday: %d/%d questions, +%d XP\n\n[b]Badges[/b]\n" % [
|
||||
profile["level"],
|
||||
profile["xp"],
|
||||
xp_into,
|
||||
ProgressionService.XP_PER_LEVEL,
|
||||
var text := "[b]Overall ELO %d[/b]\n%d rated questions\nCurrent streak: %d\nBest streak: %d\nToday: %d/%d questions\n\n[b]Category ELO[/b]\n" % [
|
||||
QuestionBankService.overall_elo,
|
||||
QuestionBankService.rated_question_count,
|
||||
profile["current_streak"],
|
||||
profile["best_streak"],
|
||||
profile.get("daily_questions_answered", 0),
|
||||
profile.get("daily_goal_questions", 10),
|
||||
profile.get("daily_xp_earned", 0)
|
||||
profile.get("daily_goal_questions", 10)
|
||||
]
|
||||
if profile["badges"].is_empty():
|
||||
text += "No badges yet.\n"
|
||||
if QuestionBankService.category_elos.is_empty():
|
||||
text += "No rated categories yet.\n"
|
||||
else:
|
||||
for badge in profile["badges"]:
|
||||
text += "- %s\n" % badge
|
||||
var categories := QuestionBankService.category_elos.keys()
|
||||
categories.sort()
|
||||
for category in categories:
|
||||
text += "- %s: %d\n" % [category, int(QuestionBankService.category_elos[category])]
|
||||
|
||||
text += "\n[b]System Accuracy[/b]\n"
|
||||
if profile["system_stats"].is_empty():
|
||||
@@ -83,12 +81,11 @@ func on_show(_payload: Variant = null) -> void:
|
||||
|
||||
text += "\n[b]Recent Blocks[/b]\n"
|
||||
for block in profile["block_history"]:
|
||||
text += "- %s: %s %d/%d, +%d XP\n" % [
|
||||
text += "- %s: %s %d/%d\n" % [
|
||||
block.get("timestamp", ""),
|
||||
block.get("system", ""),
|
||||
block.get("correct", 0),
|
||||
block.get("total", 0),
|
||||
block.get("xp_earned", 0)
|
||||
block.get("total", 0)
|
||||
]
|
||||
profile_text.text = text
|
||||
|
||||
|
||||
Reference in New Issue
Block a user