diff --git a/env b/.env similarity index 100% rename from env rename to .env diff --git a/.gitignore b/.gitignore index ccd92f6..82e1192 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ .vscode -.micropico \ No newline at end of file +.micropico +breakout.code-workspace diff --git a/README.md b/README.md index 2196670..a5ca30e 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,4 @@ # Breakout Game for Raspberry Pi Pico - This is a simple Breakout game implemented in MicroPython for the Raspberry Pi Pico. The game uses the Pico-LCD-1.14 dDisplay for graphics and input. @@ -10,23 +9,19 @@ This is a simple Breakout game implemented in MicroPython for the Raspberry Pi P - Score tracking - Splash screen and game over screens - ## Requirements - Raspberry Pi Pico - Pico-LCD-1.14 display - MicroPython firmware installed on the Pico - ## Installation and Setup - 1. Connect the Pico-LCD-1.14 display to the Raspberry Pi Pico following the wiring diagram provided in the display's documentation. - 2. Download the MicroPython firmware for the Raspberry Pi Pico from the official MicroPython website and install it on the Pico. You can use the Thonny IDE to upload the firmware. - 3. Clone or download this repository to your local machine. - 4. Open the Thonny IDE and connect to your Raspberry Pi Pico. - 5. Copy the contents of the repository to the Pico's file system. You can do this by dragging and dropping the files from your local machine to the Thonny file explorer. +6. Once the files are copied, reset the Pico to start the game. -6. Once the files are copied, reset the Pico to start the game. \ No newline at end of file +## .env file +In the .env file the user can control the behaviour of the joystick B-button. +DISABLE_B = 0 | 1 # Values: 0 = pressing B quits the program, 1 = pressing B does nothing. \ No newline at end of file diff --git a/breakout.code-workspace b/breakout.code-workspace deleted file mode 100644 index 4d1829d..0000000 --- a/breakout.code-workspace +++ /dev/null @@ -1,14 +0,0 @@ -{ - "folders": [ - { - "path": "." - }, - { - "name": "Mpy Remote Workspace", - "uri": "pico:" - } - ], - "settings": { - "python.languageServer": "Pylance" - } -} \ No newline at end of file diff --git a/breakout.py b/breakout.py index 8b325ef..214edad 100644 --- a/breakout.py +++ b/breakout.py @@ -68,7 +68,7 @@ DEBOUNCE = 300_000 # ============================ try: DISABLE_B = 0 - with open("env", "r") as file: + with open(".env", "r") as file: for line in file: key, value = line.strip().split("=") if key == "DISABLE_B": @@ -152,9 +152,8 @@ class Paddle: """Draw paddle.""" screen.fbuf.fill_rect(self.x, self.y, self.width, self.height, PADDLE_COLOR) - def update(self, screen: Screen): + def update(self, screen: Screen, joystick: Joystick): """Update paddle position.""" - global joystick if joystick.joy_left() == 0: self.move(-1) elif joystick.joy_right() == 0: @@ -431,7 +430,7 @@ def main_loop(screen, joystick): sleep_us(DEBOUNCE) # Debounce delay elif game_state == PLAYING and lives > 0 and score < 28: # Game loop - paddle.update(screen) + paddle.update(screen, joystick) if ball_stuck: # Keep the ball stuck to the paddle ball.x = paddle.x + (paddle.width // 2)