From d53d2a20d7a60443fef7c91d0f6fd144e2b99a07 Mon Sep 17 00:00:00 2001
From: DannyAbdi <dannyabdi13@gmail.com>
Date: Tue, 5 Mar 2024 01:36:58 +0000
Subject: [PATCH] slight changes to accomodate minmax

---
 playerController.py | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/playerController.py b/playerController.py
index dfb7184..e93c6d0 100644
--- a/playerController.py
+++ b/playerController.py
@@ -2,6 +2,7 @@ from config import *
 from dfs import *
 from bfs import *
 from dijkstra import *
+from game import *
 
 
 class PlayerController:
@@ -14,6 +15,8 @@ class PlayerController:
     def __init__(self, player, maze):
         self.player = player
         self.maze = maze
+        self.player_position = (1, 1)
+        self.enemy_positions = self.get_enemy_positions()
         self.dfs_solver = DFS()
         self.bfs_solver = BFS()
         self.dijkstra_solver = None
@@ -30,17 +33,31 @@ class PlayerController:
 
         if direction[pygame.K_UP]:
             new_y -= TILE_SIZE
+            new_position = (self.player_position[0] - 1, self.player_position[1])
         elif direction[pygame.K_DOWN]:
             new_y += TILE_SIZE
+            new_position = (self.player_position[0] + 1, self.player_position[1])
         elif direction[pygame.K_LEFT]:
             new_x -= TILE_SIZE
+            new_position = (self.player_position[0], self.player_position[1] - 1)
         elif direction[pygame.K_RIGHT]:
             new_x += TILE_SIZE
+            new_position = (self.player_position[0], self.player_position[1] + 1)
+        else:
+            return
+
+        if self.is_valid_position(new_position):
+            self.player_position = new_position
 
         if self.check_collision(new_x, new_y):
             self.player.x = new_x
             self.player.y = new_y
 
+    def is_valid_position(self, position):
+        x, y = position
+        return 0 <= x < len(self.maze.current_level) and 0 <= y < len(self.maze.current_level[0]) and \
+            self.maze.current_level[x][y] != 1
+
     """
     Checks if the player will collide with walls at the specified position.
 
-- 
GitLab