Take EIGHT_BIT_SCALE into account, in box_width
[naja.git] / naja / scenes / credits.py
index cd3ad5838ca75229620c02b4a960e678a41ce4d9..1558142d88ce5e70ffaf596f69d47af1f1fbd3d7 100644 (file)
@@ -1,27 +1,44 @@
 """
-Main menu scene.
+Credits scene.
 """
 
 import pygame.locals as pgl
 
+from naja.constants import KEYS
 from naja.scenes.scene import Scene
-from naja.widgets.text import TextWidget
+from naja.widgets.text import TextWidget, TextBoxWidget
 from naja.events import SceneChangeEvent
 
 
 class CreditsScene(Scene):
-
-    base_menu = None
-
-    def __init__(self):
-        super(CreditsScene, self).__init__()
-        self.widgets.append(TextWidget((10, 10), 'Credits',
-                            colour=(255, 255, 255)))
-
-    def set_base_menu(self, base_menu):
-        self.base_menu = base_menu
-
-    def handle_event(self, ev):
-        if ev.type == pgl.KEYUP and ev.key in (pgl.K_q, pgl.K_ESCAPE):
-            SceneChangeEvent.post(self.base_menu)
+    """
+    List those responsible.
+    """
+
+    def __init__(self, state):
+        super(CreditsScene, self).__init__(state)
+        self.add(TextWidget(
+            (400, 30), 'Credits', fontsize=32, colour='white', centre=True))
+        self.add(TextWidget(
+            (400, 80), 'A game about robots and bits and other things',
+            fontsize=32, colour='white', centre=True))
+        self.add(TextWidget(
+            (400, 120), 'by', fontsize=32, colour='white', centre=True))
+        self.add(TextBoxWidget(
+            (20, 160), 'Adrianna Pinska, David Sharpe, Jeremy Thurgood, '
+            'Neil Muller, Simon Cross & Stefano Rivera',
+            fontsize=32, colour='white', padding=1, border=1,
+            bg_colour='black', border_colour='black',
+            box_width=640))
+        self.add(TextBoxWidget(
+            (30, 280),
+            'Music by Rolemusic: http://rolemusic.sawsquarenoise.com/',
+            fontsize=32, colour='white', padding=1, border=1,
+            bg_colour='black', border_colour='black',
+            box_width=640))
+
+    def handle_scene_event(self, ev):
+        if ev.type == pgl.KEYDOWN and ev.key in KEYS.QUIT:
+            from naja.scenes.menu import MenuScene
+            SceneChangeEvent.post(MenuScene)
             return