Loading pythonsnake/controller.py +9 −10 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ class Controller: return int(choice) def start_game(self, mode: int) -> None: #TODO: detect console size of the user self.game = Game(50, 25) if mode == 1: Loading @@ -38,12 +39,13 @@ class Controller: keyboard.unhook_all() self.listen_escape_game() self.listen_move() while not self.game.lost: self.view.display_grid( self.game.move(self.game.current_direction + " arrow") ) self.listen_move() continue time.sleep(1) Loading @@ -54,11 +56,8 @@ class Controller: def listen_move(self) -> None: if keyboard.is_pressed("left arrow"): self.view.display_grid(self.game.move("left arrow")) if keyboard.is_pressed("right arrow"): self.view.display_grid(self.game.move("right arrow")) if keyboard.is_pressed("up arrow"): self.view.display_grid(self.game.move("up arrow")) if keyboard.is_pressed("down arrow"): self.view.display_grid(self.game.move("down arrow")) keyboard.on_press_key("left arrow", lambda _: self.view.display_grid(self.game.move("left arrow"))) keyboard.on_press_key("right arrow", lambda _: self.view.display_grid(self.game.move("right arrow"))) keyboard.on_press_key("up arrow", lambda _: self.view.display_grid(self.game.move("up arrow"))) keyboard.on_press_key("down arrow", lambda _: self.view.display_grid(self.game.move("down arrow"))) No newline at end of file pythonsnake/terminalview.py +6 −1 Original line number Diff line number Diff line Loading @@ -5,12 +5,16 @@ import os class TerminalView: def __init__(self) -> None: pass self.in_progress = False def cls(self) -> None: os.system("cls" if os.name == "nt" else "clear") def display_grid(self, gameState: Game) -> None: if(self.in_progress == True): return None self.in_progress = True grid_to_print = "" for Y, line in enumerate(gameState.grid): Loading Loading @@ -71,6 +75,7 @@ class TerminalView: ) self.cls() print(grid_to_print, end="\r") self.in_progress = False def menu(self) -> None: self.cls() Loading Loading
pythonsnake/controller.py +9 −10 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ class Controller: return int(choice) def start_game(self, mode: int) -> None: #TODO: detect console size of the user self.game = Game(50, 25) if mode == 1: Loading @@ -38,12 +39,13 @@ class Controller: keyboard.unhook_all() self.listen_escape_game() self.listen_move() while not self.game.lost: self.view.display_grid( self.game.move(self.game.current_direction + " arrow") ) self.listen_move() continue time.sleep(1) Loading @@ -54,11 +56,8 @@ class Controller: def listen_move(self) -> None: if keyboard.is_pressed("left arrow"): self.view.display_grid(self.game.move("left arrow")) if keyboard.is_pressed("right arrow"): self.view.display_grid(self.game.move("right arrow")) if keyboard.is_pressed("up arrow"): self.view.display_grid(self.game.move("up arrow")) if keyboard.is_pressed("down arrow"): self.view.display_grid(self.game.move("down arrow")) keyboard.on_press_key("left arrow", lambda _: self.view.display_grid(self.game.move("left arrow"))) keyboard.on_press_key("right arrow", lambda _: self.view.display_grid(self.game.move("right arrow"))) keyboard.on_press_key("up arrow", lambda _: self.view.display_grid(self.game.move("up arrow"))) keyboard.on_press_key("down arrow", lambda _: self.view.display_grid(self.game.move("down arrow"))) No newline at end of file
pythonsnake/terminalview.py +6 −1 Original line number Diff line number Diff line Loading @@ -5,12 +5,16 @@ import os class TerminalView: def __init__(self) -> None: pass self.in_progress = False def cls(self) -> None: os.system("cls" if os.name == "nt" else "clear") def display_grid(self, gameState: Game) -> None: if(self.in_progress == True): return None self.in_progress = True grid_to_print = "" for Y, line in enumerate(gameState.grid): Loading Loading @@ -71,6 +75,7 @@ class TerminalView: ) self.cls() print(grid_to_print, end="\r") self.in_progress = False def menu(self) -> None: self.cls() Loading