view mamba/habitats/level.py @ 236:09247e08aeda

Refactor edit calling code. Tweak toolbar layout
author Neil Muller <drnlmuller@gmail.com>
date Wed, 14 Sep 2011 23:32:08 +0200
parents 119c0fb758c2
children fba74abad7b7
line wrap: on
line source

"""Where a level object hides."""

from pygame.locals import KEYDOWN

from mamba.constants import ESCAPE_KEYS
from mamba.engine import Habitat, NewHabitatEvent
from mamba.world import World
from mamba.widgets.game import GameWidget
from mamba.level import Level


class LevelHabitat(Habitat):
    def __init__(self, level_name):
        super(LevelHabitat, self).__init__()
        level = Level(level_name)
        world = World(level)
        game_widget = GameWidget(world)
        self.container.add(game_widget)
        self.container.add_callback(KEYDOWN, self.keydown_event)

    def keydown_event(self, ev, widget):
        if ev.key in ESCAPE_KEYS:
            from mamba.habitats.mainmenu import MainMenu
            NewHabitatEvent.post(MainMenu())
            return True