import pygame.locals as pgl
-from .scene import Scene
-from .menu import MenuScene
-
+from naja.constants import KEYS
+from naja.events import SceneChangeEvent
+from naja.scenes.scene import Scene
from naja.widgets.board import BoardWidget
from naja.widgets.player_bits import PlayerBitsWidget
from naja.widgets.game_bits import GameBitsWidget
from naja.widgets.info_area import InfoAreaWidget
-
-from naja.events import SceneChangeEvent
+from naja.widgets.robot import RobotWidget
class GameScene(Scene):
Gameboard scene.
"""
- def __init__(self):
- super(GameScene, self).__init__()
- self.widgets.append(PlayerBitsWidget())
- self.widgets.append(BoardWidget())
- self.widgets.append(GameBitsWidget())
- self.widgets.append(InfoAreaWidget())
-
- def handle_event(self, ev):
- if ev.type == pgl.KEYUP and ev.key in (pgl.K_q, pgl.K_ESCAPE):
- SceneChangeEvent.post(scene=MenuScene())
+ def __init__(self, state):
+ super(GameScene, self).__init__(state)
+ self.add(PlayerBitsWidget((0, 0), state))
+ info = InfoAreaWidget((480, 0), state)
+ self.add(BoardWidget((0, 60), state, info))
+ self.add(GameBitsWidget((0, 540), state))
+ self.add(info)
+ self.add(RobotWidget(state))
+
+ def handle_scene_event(self, ev):
+ from naja.scenes.menu import MenuScene
+ if ev.type == pgl.KEYDOWN and ev.key in KEYS.QUIT:
+ SceneChangeEvent.post(MenuScene)
return