def modeswitch(self, done): # done is tuple with necessary information if done: self.blit() self.mode.update() self.blit() newmode = done[0] if newmode == "freemode": self.mode = Freemode(done[1], self.screen.get_size()) elif newmode == "scoremode": self.mode = Scoremode(done[1], self.screen.get_size(), done[2]) elif newmode == "timesavemode": self.mode = Timemode(done[1], self.screen.get_size(), done[2], done[3]) elif newmode == "clicktocontinue": self.mode = ClickToContinue(done[1], self.screen.get_size(), done[2]) elif newmode == "clicktocontinue_scoremode_loss": self.mode = ClickToContinue(done[1], self.screen.get_size(), done[2], wait=700) elif newmode == "selecthighscore": self.mode = SelectHighscore(self.screen.get_size()) elif newmode == "mainmenu": self.mode = Mainmenu(self.screen.get_size())
def __init__(self): pygame.init() self.fullscreen = GAME['fullscreen'] self.set_resolution("mainmenu") pygame.display.set_caption(GAME['caption']) self.clock = pygame.time.Clock() self.timeinterval = GAME['fps-limit'] self.mode = Mainmenu(self.screen.get_size())
def handle_button_clicks(self): if self.mode.name == "Scoremode": buttons = self.mode.button_clicked() for name in buttons: if name == "quit": nice_print([ "Game.handle_button_clicks:", "'quit' clicked: exiting" ]) exit() elif name == "restart": self.mode = Scoremode(1, self.screen.get_size()) elif name == "pause": self.mode.set_pause() elif name == "main_menu": self.set_resolution("mainmenu") self.mode = Mainmenu(self.screen.get_size()) if self.mode.name == "Timemode": buttons = self.mode.button_clicked() for name in buttons: if name == "quit": nice_print([ "Game.handle_button_clicks:", "'quit' clicked: exiting" ]) exit() elif name == "restart": self.mode = Timemode(1, self.screen.get_size()) elif name == "pause": self.mode.set_pause() elif name == "main_menu": self.set_resolution("mainmenu") self.mode = Mainmenu(self.screen.get_size()) elif self.mode.name == "Mainmenu": buttons = self.mode.button_clicked() for name in buttons: if name == "scoremode": self.set_resolution("gametime") self.mode = Scoremode(1, self.screen.get_size()) elif name == "timesavemode": self.set_resolution("gametime") self.mode = Timemode(1, self.screen.get_size()) elif name == "highscore": self.mode = SelectHighscore(self.screen.get_size()) elif name == "help": open_help_in_browser() elif name == "exit": nice_print([ "Game.handle_button_clicks:", "'quit' clicked: exiting" ]) exit() elif self.mode.name == "SelectHighscore": buttons = self.mode.button_clicked() for name in buttons: if name == "back_highscore_button": self.mode = Mainmenu(self.screen.get_size()) elif name == "timesave_highscore_button": self.mode = Highscore(self.screen.get_size(), gametype="timesave-game", title_prefix="Timesave ") elif name == "normalgame_highscore_button": self.mode = Highscore(self.screen.get_size(), gametype="normal-game", title_prefix="Normal ")