Breakout
Continued Python games coursework after the Car Game: pygame Breakout with paddle, ball, bricks, and scoring. Version history lives in numbered Version folders (1 through 6) from before Git, with the latest work refactored into component modules.
Breakout
Purpose
This was the next step in the same Python programming course as the Car Game: a Breakout-style project to keep practising pygame, game loops, collisions, and scoring. We had not been taught Git or other version control yet, so the assignment history is preserved as separate folders named Version 1, Version 2, and so on, each time adding behaviour or refactoring toward clearer structure.
What It Provides
A controllable paddle, ball physics against a brick grid, score and progress feedback, and configurable input (keyboard or mouse) in a fixed playfield. Earlier folders show simpler or monolithic scripts; later versions add features and split responsibilities across files.
What I Built
The line of work culminates in Version 6, where the main script coordinates paddle, ball, brick, text, and progress objects with a clear split between drawing, input, and update steps. That layout reflects refactoring into component-style modules rather than growing a single file indefinitely.
My Role
I carried the project forward from early prototypes through each numbered folder, using those snapshots both to add functionality and to refactor into classes and separate modules so the codebase could evolve without rewriting everything from scratch each week.
How I Contributed
I kept pygame structure readable: constants at the top, small modules per entity where the course allowed, and a predictable update and render order. Folder-based versioning was our substitute for commits until we later learned Git, which is why the repository still mirrors that numbered Version folder layout.
Tech used
- Python
- Pygame
