From: Neil Date: Thu, 18 Apr 2013 09:10:28 +0000 (+0200) Subject: Redo keyboard navigation code to support WASD as well X-Git-Url: https://git.ctpug.org.za/?p=erdslangetjie.git;a=commitdiff_plain;h=5ef62be743537175b38e5044dbbdcd17ccaf6b1e;hp=7cc9c4c27f1f3f9f46e4234469417b707264b01c Redo keyboard navigation code to support WASD as well --- diff --git a/erdslangetjie/__main__.py b/erdslangetjie/__main__.py index 9a609c6..71ef53b 100644 --- a/erdslangetjie/__main__.py +++ b/erdslangetjie/__main__.py @@ -1,6 +1,4 @@ -import pygame - -from erdslangetjie.constants import TILE_SIZE +from erdslangetjie.constants import TILE_SIZE, LEFT, RIGHT, UP, DOWN from kivy.app import App from kivy.uix.widget import Widget @@ -164,15 +162,15 @@ class GameWindow(RelativeLayout): self.keyboard.unbind(on_key_down=self._on_key_down) def _on_key_down(self, keyboard, keycode, text, modifiers): - # FIXME - likely portablity issues direction = None - if keycode[0] == pygame.K_UP: + letter = keycode[1].lower() + if letter in UP: direction = (0, 1) - elif keycode[0] == pygame.K_DOWN: + elif letter in DOWN: direction = (0, -1) - elif keycode[0] == pygame.K_LEFT: + elif letter in LEFT: direction = (-1, 0) - elif keycode[0] == pygame.K_RIGHT: + elif letter in RIGHT: direction = (1, 0) if direction: self.do_move(direction) diff --git a/erdslangetjie/constants.py b/erdslangetjie/constants.py index 06d25fb..c9f16e6 100644 --- a/erdslangetjie/constants.py +++ b/erdslangetjie/constants.py @@ -19,3 +19,9 @@ if platform() != 'android': else: TILE_SIZE = 64 Config.set('graphics', 'fullscreen', 'auto') + +# Change here to tweak keyboard controls +LEFT = ('a', 'left') +RIGHT = ('d', 'right') +UP = ('w', 'up') +DOWN = ('s', 'down')