From d304a470e5a9fae6fc0c8975f050cb7aa290f74a Mon Sep 17 00:00:00 2001 From: Karan Jayachandra Date: Wed, 16 Oct 2024 11:08:15 +0200 Subject: First working version with history --- model.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'model.py') diff --git a/model.py b/model.py index c0b9dd3..3e76085 100644 --- a/model.py +++ b/model.py @@ -1,8 +1,13 @@ +from math import floor from csv import reader from typing import Tuple from pathlib import Path from dataclasses import dataclass +MIN_LEVEL = 1 +MAX_LEVEL = 10 +PLAYER_PER_COURT = 4 + @dataclass class Player: @@ -56,7 +61,9 @@ class PlayerList: with open(self.location, newline="") as file: pointer = reader(file) next(pointer, None) - players = {id: Player(row[0], row[1]) for id, row in enumerate(pointer)} + players = { + id: Player(row[0], int(row[1])) for id, row in enumerate(pointer) + } self.players = players def get_player_status(self, player_number: int) -> bool: @@ -70,7 +77,11 @@ class PlayerList: def get_players(self) -> dict: return self.players - def separate_players(self) -> Tuple[dict, dict]: + def get_possible_game_count(self) -> int: + active_player_count = len(self.get_active_players()) + possible_games = floor(active_player_count / PLAYER_PER_COURT) + return possible_games + + def get_active_players(self) -> Tuple[dict, dict]: active_players = {k: v for k, v in self.players.items() if v.status} - inactive_players = {k: v for k, v in self.players.items() if not v.status} - return active_players, inactive_players + return active_players -- cgit v1.3.1