Use centering on Credits screen.
[naja.git] / naja / scenes / credits.py
1 """
2 Credits scene.
3 """
4
5 import pygame.locals as pgl
6
7 from naja.constants import KEYS
8 from naja.scenes.scene import Scene
9 from naja.widgets.text import TextWidget, TextBoxWidget
10 from naja.widgets.image_box import ImageBox
11 from naja.events import SceneChangeEvent
12
13
14 class CreditsScene(Scene):
15     """
16     List those responsible.
17     """
18
19     def __init__(self, state):
20         super(CreditsScene, self).__init__(state)
21
22         background = ImageBox(
23             (0, 0), "screens/splash.png")
24         self.add(background)
25         self.add(TextWidget(
26             (400, 300), 'CREDITS', colour='white', centre=True))
27
28         self.add(TextBoxWidget(
29             (400, 340), '\n'.join([
30                 'A game about robots and bits and other things',
31                 '',
32                 'by',
33                 '',
34                 'Adrianna Pinska, David Sharpe, Jeremy Thurgood, '
35                 'Neil Muller, Simon Cross & Stefano Rivera',
36                 '',
37                 'Music by Rolemusic:',
38                 'http://rolemusic.sawsquarenoise.com/',
39                 '',
40                 'Press ESC to return to the menu.',
41             ]),
42             colour='white', padding=1,
43             bg_colour=(0, 0, 0, 0), centre=True,
44             box_width=780, view_port=(780, 250)))
45
46     def handle_scene_event(self, ev):
47         if ev.type == pgl.KEYDOWN and ev.key in KEYS.QUIT:
48             from naja.scenes.menu import MenuScene
49             SceneChangeEvent.post(MenuScene)
50             return