""" Slice It Off! - Game where you slice the area where enemies reside to the minimum """ from pathlib import Path import pygame from display import Display from images import Images, Fonts from stats import Stats from screens import welcome_screen, hiscores_screen from hiscores import HiScores from .level import Level from .show import Show from .initials import Initials class Game: def __init__(self): pygame.init() self.clock = pygame.time.Clock() self.display = Display() pygame.mouse.set_visible(False) Fonts.load_fonts( Path(__file__).parent.parent.resolve() ) self.hiscores = HiScores() def welcome(self): ws = Show(welcome_screen()) dt = 0 while ws.step(dt): dt = self.clock.tick() self.display.update( [ws] ) def show_highscores(self): his = Show(hiscores_screen(str(self.hiscores))) dt = 0 while his.step(dt): dt = self.clock.tick() self.display.update( [his] ) def newgame(self): Stats.new_game() while Stats.lives: level = Level(display = self.display) dt = 0 while level.step(dt): dt = self.clock.tick() if Stats.lives: Stats.level_up() def initials(self): initials = Initials() dt = 0 while initials.step(): dt = self.clock.tick() self.display.update([initials]) return initials.name def run(self): self.welcome() self.newgame() if self.hiscores.high_enough(Stats.score): self.hiscores.add( Stats.score, self.initials()) self.show_highscores() def __del__(self): pygame.quit()