More menu options
[naja.git] / naja / scenes / menu.py
1 """
2 Main menu scene.
3 """
4
5 import pygame.locals as pgl
6
7 from naja.scenes.scene import Scene
8 from naja.widgets.text import TextWidget
9 from naja.events import QuitGameEvent
10 from naja.scenes.credits import CreditsScene
11 from naja.events import SceneChangeEvent
12
13
14 class MenuScene(Scene):
15
16     def __init__(self):
17         super(MenuScene, self).__init__()
18         self.widgets.append(TextWidget((10, 10), 'Game', fontsize=32,
19                             colour='white'))
20         self.widgets.append(TextWidget((10, 40), 'Credits', fontsize=32,
21                             colour='white'))
22         self.widgets.append(TextWidget((10, 70), 'Quit', fontsize=32,
23                             colour='white'))
24
25     def handle_event(self, ev):
26         if ev.type == pgl.KEYUP and ev.key in (pgl.K_q, pgl.K_ESCAPE):
27             QuitGameEvent.post()
28             return
29         if ev.type == pgl.KEYUP and ev.key is pgl.K_RETURN:
30             credits_menu = CreditsScene()
31             SceneChangeEvent.post(credits_menu)
32             return