Статистика: любимая фракция — только по сознательному выбору игрока
Партии, где фракция выпала рандомом (was_random), в счётчик любимой не идут: рандомная раздача о предпочтениях не говорит. Если игрок ни разу не выбирал фракцию сам — любимой нет вовсе. Лучшая/худшая фракции и остальная статистика считаются по всем партиям, как раньше. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -140,8 +140,15 @@ def finish_match(
|
||||
def create_finished_match(
|
||||
client: TestClient, group_id: int, players: list[dict], win_reason: str = "objectives"
|
||||
) -> dict:
|
||||
"""players: [{user_id, faction_id, place, comment?}] → завершённая партия (для статистики)."""
|
||||
roster = [{"user_id": p["user_id"], "faction_id": p["faction_id"]} for p in players]
|
||||
"""players: [{user_id, faction_id, place, comment?, was_random?}] → завершённая партия."""
|
||||
roster = [
|
||||
{
|
||||
"user_id": p["user_id"],
|
||||
"faction_id": p["faction_id"],
|
||||
"was_random": p.get("was_random", False),
|
||||
}
|
||||
for p in players
|
||||
]
|
||||
started = start_match(client, group_id, roster)
|
||||
assert started.status_code == 200, started.text
|
||||
results = [
|
||||
|
||||
Reference in New Issue
Block a user