X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=koperkapel%2Fscenes%2Fviewlevel.py;h=46b8a002c365abf5efeb2e6726e628cfda5a6f8c;hb=3e77dbd29c93992e5281e6f8b05f156413b9a9e4;hp=8a101df27e1a815d6bca2b9ece97775b2d6a6306;hpb=86092c002ef88ab0eb450cc7d16c2437f7861729;p=koperkapel.git diff --git a/koperkapel/scenes/viewlevel.py b/koperkapel/scenes/viewlevel.py index 8a101df..46b8a00 100644 --- a/koperkapel/scenes/viewlevel.py +++ b/koperkapel/scenes/viewlevel.py @@ -2,30 +2,23 @@ from pgzero.constants import keys from .level import LevelScene +from .base import MoveViewportEvent from ..constants import TILE_SIZE class ViewLevelScene(LevelScene): """ Level scene. """ - def __init__(self, level_name): - super(ViewLevelScene, self).__init__(level_name) - self._pos = (0, 0) - - def draw(self, screen): - super(ViewLevelScene, self).draw(screen, self._pos) - def on_key_down(self, key, mod, unicode): + offset = None if key == keys.DOWN: - self._pos = self._pos[0], self._pos[1] + TILE_SIZE - return + offset = (0, TILE_SIZE) elif key == keys.UP: - self._pos = self._pos[0], self._pos[1] - TILE_SIZE - return + offset = (0, -TILE_SIZE) elif key == keys.LEFT: - self._pos = self._pos[0] - TILE_SIZE, self._pos[1] - return + offset = (-TILE_SIZE, 0) elif key == keys.RIGHT: - self._pos = self._pos[0] + TILE_SIZE, self._pos[1] - return + offset = (TILE_SIZE, 0) + if offset: + return [MoveViewportEvent(offset)] return super(ViewLevelScene, self).on_key_down(key, mod, unicode)