From 312fcdcbf7bf75457c2d56349934c8874fd0b128 Mon Sep 17 00:00:00 2001 From: raylu Date: Sat, 12 Oct 2013 02:17:45 -0700 Subject: handle player start position in Tiled unit layer --- character.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'character.py') diff --git a/character.py b/character.py index 665bd19..7ac8aad 100644 --- a/character.py +++ b/character.py @@ -5,10 +5,11 @@ from tileset import Tileset class Character(object): movement = [0, 0] - def __init__(self, tilesize): + def __init__(self, start_pos, tilesize): self.tilesize = tilesize - self.render_x = 0 - self.render_y = 13*tilesize + self.render_x, self.render_y = start_pos + self.render_x *= tilesize + self.render_y *= tilesize def frame(self, keys): # are we done moving? @@ -21,18 +22,18 @@ class Character(object): direction = None # can we start moving? if self.movement[1] == 0: - if keys[pygame.K_DOWN]: + if keys[pygame.K_DOWN] or keys[pygame.K_j]: self.movement[1] = SPEED direction = Tileset.DOWN - elif keys[pygame.K_UP]: + elif keys[pygame.K_UP] or keys[pygame.K_k]: self.movement[1] = -SPEED direction = Tileset.UP if self.movement[0] == 0: - if keys[pygame.K_RIGHT]: + if keys[pygame.K_RIGHT] or keys[pygame.K_l]: self.movement[0] = SPEED if not self.movement[1]: # prefer up/down when moving diagonally direction = Tileset.RIGHT - elif keys[pygame.K_LEFT]: + elif keys[pygame.K_LEFT] or keys[pygame.K_h]: self.movement[0] = -SPEED if not self.movement[1]: direction = Tileset.LEFT -- cgit v1.2.3