# Puzzle 15 Game

A classic 15-puzzle game implemented in C++ using SDL3 libraries.

## Build Instructions

### Building for Desktop (Linux)

1. Install required dependencies:
```bash
apt-get install cmake libSDL3-devel libSDL3_ttf-devel libSDL3_image-devel libSDL3_mixer-devel
```

2. Configure the project:
```bash
cd desktop
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
```

3. Build the application:
```bash
make -j$(nproc)
```

4. Install assets
```bash
cd build-puzzle15
cp ../../../assets/ ./ -r
```


5. Run the game:
```bash
./puzzle15
```

### Building for Android

The project uses Gradle for Android builds with CMake for native code compilation.

1. Open the project in Android Studio or build from command line

2. Configure the build (ensure NDK is installed):
```bash
cd android
./gradlew build
```

3. Generate APK:
```bash
./gradlew assembleRelease
```

The APK will be generated in `android/app/build/outputs/apk/` directory.

## Screenshot

![Game Screenshot](screenshots/screen1.png)
![Game Screenshot](screenshots/screen2.png)
![Game Screenshot](screenshots/screen3.png)


## License

This project is licensed under the GNU General Public License v3.0.

See [LICENSE.txt](LICENSE.txt) for full license information.
