X-Git-Url: https://git.ctpug.org.za/?p=koperkapel.git;a=blobdiff_plain;f=koperkapel%2Fscenes%2Flevel.py;h=5da355f934aa3f0472a0219708cebe6860718cc6;hp=a17de55d70ece5aa8a37e2bf88891580eadf728c;hb=31ec0ae3dc918618849b41c4df6b064d6a47c69f;hpb=1d9e4b9e57fb1fa4f9b7b08d786e53b8269c09a5 diff --git a/koperkapel/scenes/level.py b/koperkapel/scenes/level.py index a17de55..5da355f 100644 --- a/koperkapel/scenes/level.py +++ b/koperkapel/scenes/level.py @@ -4,7 +4,7 @@ from pgzero.constants import keys from pygame import Surface import pygame.locals as pgl from ..loaders.levelloader import levels -from .base import Scene, ChangeSceneEvent, MoveViewportEvent, defer_to_update +from .base import Scene, ChangeSceneEvent, MoveViewportEvent, WorldEvent, defer_to_update from ..constants import TILE_SIZE, WIDTH, HEIGHT from ..roaches import build_roach from ..vehicles.base import Vehicle @@ -84,6 +84,7 @@ class BaseLevelScene(Scene): class GameLevelScene(BaseLevelScene): def enter(self, world): + print('enter', world['level']['name'], self._level) if self._level is not None: return super().enter(world) @@ -187,6 +188,9 @@ class GameLevelScene(BaseLevelScene): friend = self._level.remove_friend(x, y) self._friends.remove(friend) self._add_roach() + elif self._level.is_exit(x, y): + next_level = self._level.get_exit_level() + return [WorldEvent('set', {'level.name': next_level}), ChangeSceneEvent(GameLevelScene())] def _fire_key(self): print('Boom')