generated from mwc/project_game
A recent success that I am proud of is that I was able to give the player the ability to move up, down, left, and right. When implementing the ability to move up and down it seemed that the code was opposite of what I expected it to be. I was able to figure out how to implement it the correct way.
24 lines
924 B
Python
24 lines
924 B
Python
class Spaceship:
|
|
name = "ship"
|
|
character = '^'
|
|
|
|
def __init__(self, board_size):
|
|
board_width, board_height = board_size
|
|
self.position = (board_width // 2, board_height - 1)
|
|
|
|
def handle_keystroke(self, keystroke, game):
|
|
x, y = self.position
|
|
if keystroke.name in ("KEY_LEFT", "KEY_RIGHT","KEY_UP", "KEY_DOWN"):
|
|
if keystroke.name == "KEY_LEFT":
|
|
new_position = (x - 1, y)
|
|
if keystroke.name == "KEY_RIGHT":
|
|
new_position = (x + 1, y)
|
|
if keystroke.name == "KEY_UP":
|
|
new_position = (x, y - 1)
|
|
if keystroke.name == "KEY_DOWN":
|
|
new_position = (x, y + 1)
|
|
if game.on_board(new_position):
|
|
if game.is_empty(new_position):
|
|
self.position = new_position
|
|
else:
|
|
game.end() |