import pygame.font class Puntuacion: ''' Clase par mostrar informacion de la puntuacion ''' def __init__(self, juego): ''' Inicializar puntuacion ''' self.screen = juego.screen self.screen_rect = self.screen.get_rect() self.settings = juego.settings self.puntos = 0 self.nivel = 1 ''' Ajuste de la fuente de la puntuacion ''' self.text_color = (30, 30, 30) self.font = pygame.font.SysFont(None,48) self.preparar_puntuacion() self.preparar_nivel() def preparar_puntuacion(self): ''' Convertir puntuacion en imagen renderizada ''' score_str = "Ptos: " + str(self.puntos) self.score_image = self.font.render(score_str, True, self.text_color) ''' Puntuacion en parte superior derecha ''' self.score_rect = self.score_image.get_rect() self.score_rect.right = self.screen_rect.right - 20 self.score_rect.top = 40 def preparar_nivel(self): ''' convertir texto en imagen ''' nivel_str = f"Nivel: {self.nivel}" self.nivel_image = self.font.render(nivel_str, True, self.text_color) ''' Nivel en parte sup. derecha y debajo de los puntos ''' self.nivel_rect = self.nivel_image.get_rect() self.nivel_rect.right = self.screen_rect.right - 20 self.nivel_rect.top = 10 def mostrar_puntacion(self): ''' dibujar la puntacion ''' self.preparar_puntuacion() self.screen.blit(self.score_image, self.score_rect) ''' dibujar el nivel ''' self.preparar_nivel() self.screen.blit(self.nivel_image, self.nivel_rect)