Jump Thingy is a simple platformer game where you control a character that must jump between platforms while avoiding falling off the screen. It is a project developed in C using raylib as the graphics library.
In Jump Thingy, your goal is to keep the player moving across platforms without falling into the kill zone. Platforms are generated randomly, and the player can move sideways and jump to avoid obstacles and keep progressing.
- Random platform generation.
- Basic physics simulation (gravity and forces).
- Collision detection with platforms and screen edges.
- Smooth movement and intuitive controls.
- Uses raylib for graphics and input handling.
To compile and run the game, you need:
- Operating System: Linux.
- Compiler: GCC or any C-compatible compiler.
- Libraries:
- raylib (installed and linked).
-
Clone this repository:
git clone https://github.com/uwiwiow/jump-thingy.git cd jump-thingy
-
Compile the project using CMake:
mkdir build cd build cmake .. make
-
Run the generated binary:
./jumpThingy
The project documentation is available in two ways:
You can access the documentation directly online via GitHub Pages:
Jump Thingy Documentation
If you prefer to generate and view the documentation locally, follow these steps:
-
First, ensure you have Doxygen installed.
-
In the project root directory, where the
docs
folder is located, run the following command:doxygen docs/Doxyfile
-
The documentation will be generated in the
docs/doxygen
directory. Open the HTML files inside thedocs/doxygen/html
folder in your browser to view the documentation.
A: Move left.
D: Move right.
S: Reduce falling speed.
R: Restart the game.
The game includes a Debug Mode to help with development and testing. You can enable or disable it by modifying the globals.h
file.
- Open the
includes/globals.h
file. - Set the
DEBUG
macro to1
to enable debug mode, or0
to disable it:#define DEBUG 1 // Enable Debug Mode
When Debug Mode is enabled:
- The positions of all platforms are displayed on the screen.
- Pressing the C key resets the player's position without restarting the entire game.
.
├── CMakeLists.txt # Build configuration with CMake
├── docs
│ ├── Doxyfile # Documentation configuration with Doxygen
│ ├── doxygen # Documentation output
├── includes # Header files
└── src # Source files
The goal is to avoid falling into the kill zone while jumping across platforms. Use A and D to move sideways, and S to control your falling speed. Try to survive as long as possible!
This project is licensed under the MIT License. Feel free to use, modify, and share it.
Contributions are welcome! If you find a bug or have a suggestion, open an issue or submit a pull request.
Developed by Uwiwiow.