77df66f6a15bbb1164be9a143329baeb422579bf
[naja.git] / naja / scenes / win.py
1 """
2 Win scene.
3 """
4
5 import pygame.locals as pgl
6
7 from naja.constants import KEYS, PALETTE
8 from naja.events import QuitGameEvent
9 from naja.scenes.scene import Scene
10 from naja.widgets.image_box import ImageBox
11 from naja.widgets.text import TextWidget, TextBoxWidget
12
13
14 class WinScene(Scene):
15     """
16     Congratulations.
17     """
18
19     def __init__(self, state):
20         super(WinScene, self).__init__(state)
21
22         background = ImageBox(
23             (0, 0), "screens/you_won.png")
24         self.add(background)
25
26         if self.state.gameboard.has_cheated:
27             self.add(TextWidget(
28                 (50, 250), 'But you\'re a CHEATER!', colour=PALETTE.ORANGE))
29         self.add(TextBoxWidget(
30             (50, 300), '\n\n'.join([
31                 "You're great.",
32                 "You did well.",
33                 "You should be proud of yourself.",
34             ]),
35             colour=PALETTE.WHITE, padding=1, border=1,
36             bg_colour=PALETTE.BLACK, border_colour=PALETTE.BLACK,
37             box_width=300))
38
39     def handle_scene_event(self, ev):
40         if ev.type == pgl.KEYDOWN and ev.key in KEYS.QUIT:
41             QuitGameEvent.post()
42             return