self._set_pos(x + 1, y)
offset = (TILE_SIZE, 0)
self._set_angle(270)
- elif key == keys.S:
- if self._level_layer == 'floor' and self._level.can_crawl(x, y, 'floor'):
- # We're probably on a grate
- if self._level.can_crawl(x, y, 'tunnels'):
- self._level_layer = 'tunnels'
- self._mode = 'crawl'
- elif self._level.can_crawl(x, y, 'floor'):
- # Must be in the tunnels already
- self._level_layer = 'floor'
- self._mode = 'walk'
+ elif key == keys.C:
+ # Activate
+ if self._level.is_grate(x, y):
+ if self._level_layer == 'floor' and self._level.can_crawl(x, y, 'floor'):
+ if self._level.can_crawl(x, y, 'tunnels'):
+ self._level_layer = 'tunnels'
+ self._mode = 'crawl'
+ elif self._level.can_crawl(x, y, 'floor'):
+ # Must be in the tunnels already
+ self._level_layer = 'floor'
+ self._mode = 'walk'
+ elif self._level.is_keypad(x, y):
+ self._level.press_keypad(x, y, self._roaches)
return
+ elif key == keys.X:
+ # Fire
+ print('Boom')
+ elif key == keys.V:
+ # Leave vehicle
+ print('Vehicle key pressed')
+
if offset:
return [MoveViewportEvent(offset)]
return super(GameLevelScene, self).on_key_down(key, mod, unicode)