Mercurial > rinkhals
diff gamelib/mainmenu.py @ 555:296c73dcd286
Add high score dialog to main menu.
author | Simon Cross <hodgestar@gmail.com> |
---|---|
date | Sat, 28 Nov 2009 17:53:42 +0000 |
parents | 0667189a5973 |
children | 8cd13b82585e |
line wrap: on
line diff
--- a/gamelib/mainmenu.py Sat Nov 28 17:53:25 2009 +0000 +++ b/gamelib/mainmenu.py Sat Nov 28 17:53:42 2009 +0000 @@ -6,6 +6,7 @@ import engine import imagecache import gameboard +import gameover import savegame import loadlevel @@ -32,7 +33,7 @@ def __init__(self, level, **params): gui.Table.__init__(self, **params) self.mode = None - self.level_name = level.level_name + self.level = level def fullscreen_toggled(): pygame.display.toggle_fullscreen() @@ -46,13 +47,18 @@ def choose_level(): def load_func(new_level): pygame.event.post(pygame.event.Event(engine.DO_LOAD_LEVEL, level=new_level)) - self.level_name = new_level.level_name + self.level = new_level self.redraw() loadlevel.LoadLevelDialog(level, load_func).open() def load_game(): savegame.RestoreDialog(gameboard.GameBoard.restore_game).open() + def scores_pressed(): + scoreboard = gameover.Scoreboard(self.level) + title = gui.Label("High Scores for Level %s" % self.level.level_name) + gui.Dialog(title, scoreboard).open() + def help_pressed(): pygame.event.post(engine.GO_HELP_SCREEN) @@ -79,23 +85,26 @@ self.tr() self.td(loadgame_button, **td_kwargs) - quit_button = gui.Button("Quit") - quit_button.connect(gui.CLICK, quit_pressed) - help_button = gui.Button("Instructions") help_button.connect(gui.CLICK, help_pressed) - - fullscreen_toggle = gui.Button("Toggle Fullscreen") - fullscreen_toggle.connect(gui.CLICK, fullscreen_toggled) - self.tr() self.td(help_button, **td_kwargs) + scores_button = gui.Button("High Scores") + scores_button.connect(gui.CLICK, scores_pressed) + self.tr() + self.td(scores_button, **td_kwargs) + + quit_button = gui.Button("Quit") + quit_button.connect(gui.CLICK, quit_pressed) + self.tr() + self.td(quit_button, **td_kwargs) + + # fullscreen_toggle = gui.Button("Toggle Fullscreen") + # fullscreen_toggle.connect(gui.CLICK, fullscreen_toggled) # self.tr() # self.td(fullscreen_toggle, **td_kwargs) - self.tr() - self.td(quit_button, **td_kwargs) def redraw(self): - self.start_button.value = self.level_name + self.start_button.value = self.level.level_name