RPG is a simple role-playing game written in C.
It is a school project for the first year at Epitech.
We based our game on the game Link's Awakening.
We used the same map, the same sprites and the same music.
$ git clone git@github.com:DoctorPok42/RPG.git
$ cd RPG
$ make
$ ./my_rpg
We used the 3D isometric projection to display the map.
We used another map to display the map in 3D. This map have just the sprite that we want in 3D (like the trees and the houses).
The colision is based on the pixel perfect colision. It means that the colision is based on the alpha channel of the sprite. If the alpha channel is equal to 0, it means that the pixel is opaque and the player can't go through it. Else, the player can go through it.
We use a another map to check the colision. This map is a copy of the map but with the alpha channel of the sprite.
flèches directionnelles
to moveE
to interactESC
to pause the game
The goal of the game is to reach the end of the map. You can interact with objects by pressing E
when you are close enough to them. You can also talk to NPCs by pressing E
when you are close enough to them. You can pause the game by pressing ESC
.
- C
- CSFML
assets/
contains all the assets of the gameinclude/
contains all the header fileslib/
contains all the libraries used in the projectsrc/
contains all the source filessrc/utils/create/
contains all the source files to create the gamesrc/utils/display/
contains all the source files to display the gamesrc/utils/event/
contains all the source files to handle the events