Resubmit commit 1

Re-wrote the player and board game because i kept getting stuck on creating the walls. There was an agent error so i needed to start from the begining again. I looked up resources online and used the tic tac toe and retro labs for help.
This commit is contained in:
ilmabura
2025-12-07 11:20:03 -05:00
parent cdafa795fc
commit f0840a02fc
7 changed files with 58 additions and 23 deletions

View File

@@ -1,28 +1,38 @@
class Player:
class Player:
"""
Player agent for Escape the Maze.
Moves one step at a time using the arrow keys.
"""
name = "player"
character = "🐧"
color = "purple"
character = "🐧" # Penguin icon
def __init__(self, board_size):
# Start at bottom-left corner
self.position = (0, board_size[1] - 1)
# Start near the top-left corner
width, height = board_size
self.position = (1, 1)
def handle_keystroke(self, keystroke, game):
"""
Called once for each key pressed since the last turn.
Moves the player using the arrow keys.
"""
x, y = self.position
new_position = None
if keystroke.name == "KEY_LEFT":
new_position = (x - 1, y)
elif keystroke.name == "KEY_RIGHT":
new_position = (x + 1, y)
elif keystroke.name == "KEY_UP":
if keystroke.name == "KEY_UP":
new_position = (x, y - 1)
elif keystroke.name == "KEY_DOWN":
new_position = (x, y + 1)
else:
elif keystroke.name == "KEY_LEFT":
new_position = (x - 1, y)
elif keystroke.name == "KEY_RIGHT":
new_position = (x + 1, y)
if new_position is None:
return
# Contain penguin inside board
if game.on_board(new_position):
self.position = new_position
if game.on_board(new_position) and game.is_empty(new_position):
self.position = new_position