fix volforce rating

This commit is contained in:
Walter 2025-02-24 21:52:25 +01:00
parent bcf20eb7e6
commit 54a901bbd1

View File

@ -1,4 +1,4 @@
from django.db.models import F, BooleanField, IntegerField, ExpressionWrapper, Count, Sum, DecimalField
from django.db.models import F, BooleanField, IntegerField, ExpressionWrapper, Count, Sum, DecimalField, Q
from django.db.models.functions import Cast
from django.shortcuts import render
from django.views.generic import TemplateView
@ -48,11 +48,11 @@ class LeaderboardGlobalView(TemplateView):
def get(self, request, *args, **kwargs):
# Get top 100 best players
players = Player.objects.annotate(
clears=Count(F("bloonsa_level_scores__clear")),
golds=Count(F("bloonsa_level_scores__dart_glitch_ever"))
).annotate(
volforce=F("clears") + F("golds")
).order_by("-volforce")[:10]
clears=Count("bloonsa_level_scores", filter=Q(bloonsa_level_scores__clear=True)),
golds=Count("bloonsa_level_scores", filter=Q(bloonsa_level_scores__dart_glitch_ever=True))
).annotate(
volforce=F("clears") + F("golds")
).order_by("-volforce")[:10]
r = render(request, "bloonsa_game/modules/leaderboard_global.html",
context={