MOVE tick and score rendering to InfoRenderer

This commit is contained in:
2025-04-26 20:24:57 +02:00
parent e6e1985a4f
commit 9b76b6e65a
3 changed files with 22 additions and 16 deletions

View File

@@ -1,15 +1,18 @@
import pygame
class InfoRenderer:
def __init__(self, screen, styling):
def __init__(self, screen, styling, match):
self.screen = screen
self.styling = styling
self.font = self.styling["small_font"]
self.match = match
self.colour = self.styling["text_colour"]
self.font = self.styling["font"]
self.small_font = self.styling["small_font"]
self.selected_player = None
# Private methods
def _draw_player_info(self):
def _render_player_info(self):
"""Draws the player info on the screen."""
if self.selected_player is None:
return
@@ -18,10 +21,20 @@ class InfoRenderer:
player_info += f"Active Weapon: {self.selected_player.current_weapon}\n"
player_info += f"Health: {self.selected_player.health}\n"
text_surface = self.font.render(player_info, True, self.styling["text_colour"])
text_surface = self.small_font.render(player_info, True, self.styling["text_colour"])
self.screen.blit(text_surface, (10, 100))
def _render_current_tick(self, match_tick, max_tick):
text = self.font.render(f"Tick: {match_tick}/{max_tick}", True, self.colour)
self.screen.blit(text, (10, 10))
def _render_team_scores(self, team_1_score, team_2_score):
text = self.font.render(f"Score: {team_1_score} - {team_2_score}", True, self.colour)
self.screen.blit(text, (10, 40))
# Public methods
def render(self):
"""Renders the info on the screen."""
self._draw_player_info()
self._render_player_info()
self._render_current_tick(self.match.tick, self.match.max_tick)
self._render_team_scores(self.match.team_1.score, self.match.team_2.score)