Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sejuti-sarker-tinny/flappy-bird-game

Classic Flappy Bird game, using the Swing library
https://github.com/sejuti-sarker-tinny/flappy-bird-game

java java-8

Last synced: about 1 month ago
JSON representation

Classic Flappy Bird game, using the Swing library

Awesome Lists containing this project

README

        

# Bird-Game

A Java implementation of the classic Flappy Bird game, using the **Swing** library for GUI rendering and object-oriented programming principles to manage game components.

## Features
- **Gameplay**: Navigate the bird through a series of tubes while avoiding collisions.
- **Physics**: Gravity-based mechanics with user-triggered upward movement using the spacebar.
- **Dynamic Difficulty**: The game's speed increases as you progress.
- **Score System**: Tracks current and high scores across sessions.
- **Responsive Controls**: Start and control the game using keyboard inputs.

## Prerequisites
- **Java JDK 8+**: Ensure you have the Java Development Kit installed.
- **Assets**: Place the following image files in the `src` directory or classpath:

## Controls
- **Enter**: Start or restart the game.
- **Spacebar**: Make the bird jump.

## How to Run
1. Compile the Java files:
```bash
javac FlappyBird.java
## Screenshots
![image](https://github.com/user-attachments/assets/bee470d7-6ec7-4c4b-b2c2-b97d6fcf3c97)
![image](https://github.com/user-attachments/assets/230ab0f8-0220-4f1c-835a-7cb9d899ddb9)

## Key Concepts Demonstrated
Object-Oriented Design: Modular code with encapsulated game logic.
Event Handling: Captures keyboard inputs for gameplay interaction.
Proxy Design Pattern: Efficient image loading and resource management.
Graphics Rendering: Custom rendering of sprites and UI components using Graphics2D.

## License
This project is licensed under the MIT License.