X-Git-Url: https://git.ctpug.org.za/?p=naja.git;a=blobdiff_plain;f=naja%2Fscenes%2Fcredits.py;fp=naja%2Fscenes%2Fcredits.py;h=8a6cfc238510eddf4cd8573e1697becc2be3ac44;hp=a522c986c1207ba6a97e7e84bac9bb56475eaabe;hb=a4cb14512c07e5677c295d56b475a9562936a5e6;hpb=1dd7a53e5f3442d78e1db6d8142445f8185c817b diff --git a/naja/scenes/credits.py b/naja/scenes/credits.py index a522c98..8a6cfc2 100644 --- a/naja/scenes/credits.py +++ b/naja/scenes/credits.py @@ -3,10 +3,12 @@ Credits scene. """ +import pygame import pygame.locals as pgl -from naja.constants import KEYS +from naja.constants import KEYS, FPS from naja.scenes.scene import Scene +from naja.utils import Flashlight from naja.widgets.text import TextWidget, TextBoxWidget from naja.widgets.image_box import ImageBox from naja.events import SceneChangeEvent @@ -19,6 +21,7 @@ class CreditsScene(Scene): def __init__(self, state): super(CreditsScene, self).__init__(state) + self.flashlight = Flashlight(int(1.5 * FPS)) background = ImageBox( (0, 0), "screens/splash.png") @@ -26,7 +29,7 @@ class CreditsScene(Scene): self.add(TextWidget( (400, 300), 'CREDITS', colour='white', centre=True)) - self.add(TextBoxWidget( + self.credits = TextBoxWidget( (400, 340), '\n'.join([ 'A game about robots and bits and other things', '', @@ -40,6 +43,10 @@ class CreditsScene(Scene): 'Desilu Crossman', 'for snacks and tutorial inspiration', '', + 'Bearnard Hibbins, Graham Inggs,', + 'and William Stewart', + 'for playtesting and finding bugs', + '', 'Music by Rolemusic:', 'http://rolemusic.sawsquarenoise.com/', '', @@ -48,7 +55,19 @@ class CreditsScene(Scene): ]), colour='white', padding=1, bg_colour=(0, 0, 0, 0), centre=True, - box_width=780, view_port=(780, 250))) + box_width=780, view_port=(780, 250)) + self.add(self.credits) + + def render_scene(self, surface): + if self.flashlight is not None: + if self.flashlight.tick(): + fake_event = pygame.event.Event(pgl.KEYDOWN, key=pgl.K_DOWN) + self.credits.handle_event(fake_event) + + def handle_event(self, ev): + if ev.type == pgl.KEYDOWN: + self.flashlight = None + return super(CreditsScene, self).handle_event(ev) def handle_scene_event(self, ev): if ev.type == pgl.KEYDOWN and ev.key in KEYS.QUIT: