Mercurial > mamba
annotate mamba/habitats/level.py @ 61:fc4b7db1d832
Habitat switching.
author | Simon Cross <hodgestar@gmail.com> |
---|---|
date | Sun, 11 Sep 2011 16:35:02 +0200 |
parents | 30d4f3e62bcf |
children | 40be38f4427c |
rev | line source |
---|---|
19
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
1 """Where a level object hides.""" |
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
2 |
61 | 3 from pygame.locals import KEYDOWN |
4 | |
5 from mamba.constants import ESCAPE_KEYS | |
6 from mamba.engine import Habitat, NewHabitatEvent | |
19
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
7 from mamba.widgets.level import LevelWidget |
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
8 from mamba.level import Level |
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
9 |
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
10 |
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
11 class LevelHabitat(Habitat): |
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
12 def __init__(self, level_name): |
24
30d4f3e62bcf
Refactor widgets *again*, add container to Habitat
Stefano Rivera <stefano@rivera.za.net>
parents:
19
diff
changeset
|
13 super(LevelHabitat, self).__init__() |
19
6d195a3a4557
Somewhere for levels to live.
Simon Cross <hodgestar@gmail.com>
parents:
diff
changeset
|
14 self.level = Level(level_name) |
61 | 15 self.level_widget = LevelWidget(self.level) |
16 self.container.add(self.level_widget) | |
17 self.container.add_callback(KEYDOWN, self.keydown_event) | |
18 | |
19 def keydown_event(self, ev, widget): | |
20 if ev.key in ESCAPE_KEYS: | |
21 from mamba.habitat.mainmenu import MainMenu | |
22 NewHabitatEvent.post(MainMenu()) |