class AVE: def __init__(self, folder="games"): from screen import Screen self.screen = Screen() self.character = Character(self.screen) self.games = Games(folder, self.screen, self.character) def start(self): self.screen.print_titles() game_to_load = self.screen.menu(self.games.titles(), 8, titles=True) self.games[game_to_load].load() again = True while again: again = False try: self.games[game_to_load].begin() except AVEGameOver: next = self.screen.gameover() self.character.reset() if next == 0: again = True if next == 2: raise AVEQuit except AVEWinner: next = self.screen.winner() self.character.reset() if next == 0: again = True if next == 2: raise AVEQuit except AVEToMenu: pass def exit(self): self.screen.close()