annotate gamelib/menu.py @ 24:9d5de13e2ac3

Add a game screen. So far, the game content looks a *lot* like the main menu.
author Jeremy Thurgood <firxen@gmail.com>
date Sun, 22 Aug 2010 18:09:25 +0200
parents 87f8a46b88af
children e5c043aeed65
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
1 # menu.py
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
2 # Copyright Boomslang team, 2010 (see COPYING File)
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
3 # Main menu for the game
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
4
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
5 from albow.screen import Screen
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
6 from albow.controls import Button, Label
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
7 from albow.layout import Column
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
8
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
9 class MenuScreen(Screen):
19
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
10 def __init__(self, shell):
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
11 Screen.__init__(self, shell)
24
9d5de13e2ac3 Add a game screen. So far, the game content looks a *lot* like the main menu.
Jeremy Thurgood <firxen@gmail.com>
parents: 19
diff changeset
12 self.shell = shell
9d5de13e2ac3 Add a game screen. So far, the game content looks a *lot* like the main menu.
Jeremy Thurgood <firxen@gmail.com>
parents: 19
diff changeset
13 StartButton = Button('Start New Game', action = self.start)
19
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
14 QuitButton = Button('Quit', action = shell.quit)
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
15 Title = Label('Caught! ... In SPAACE')
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
16 menu = Column([
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
17 Title,
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
18 StartButton,
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
19 QuitButton,
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
20 ], align='l', spacing=20)
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
21 self.add_centered(menu)
17
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
22
19
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
23 def start(self):
87f8a46b88af Fix indentation
Neil Muller <neil@dip.sun.ac.za>
parents: 17
diff changeset
24 print 'Starting the game'
24
9d5de13e2ac3 Add a game screen. So far, the game content looks a *lot* like the main menu.
Jeremy Thurgood <firxen@gmail.com>
parents: 19
diff changeset
25 self.shell.show_screen(self.shell.game_screen)
17
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
26
55f1969e41c9 Add simple menu screen
Neil Muller <neil@dip.sun.ac.za>
parents:
diff changeset
27