trotFunky
60770b5395
Rules can be created from the UI Game can be stopped/started from the UI Current level can be reset (Load from file again) Added "Game" target and main file TODO (A lot): - Unit tests - Fully functionnal UI - Win conditions - Level background - Level switching/progression - Interesting and varied rules - Multi-scale pathfinding - etc
51 lines
No EOL
1.7 KiB
Markdown
51 lines
No EOL
1.7 KiB
Markdown
# Project Maat
|
||
## Description
|
||
|
||
Project Maat is the codename of my C++ course "mini-project" based on the quote "Entre le fort et le faible, entre le riche et le pauvre, entre le maître et le serviteur, c’est la liberté qui opprime et la loi qui affranchit." - [Henri Lacordaire](https://en.wikipedia.org/wiki/Jean-Baptiste_Henri_Lacordaire).
|
||
|
||
This game is aimed to be a puzzle game in which the player sets different laws for the world and the people within it as to control what happens after hitting "play" and achieve the level's goal. I was inspired both by [The Incredible Machine](https://en.wikipedia.org/wiki/The_Incredible_Machine_(video_game)) and its successors and by a much more recent game : [Baba is you](https://en.wikipedia.org/wiki/Baba_Is_You).
|
||
|
||
## Dependencies
|
||
|
||
The following libraries must be installed on your system or findable by CMake to be able to build:
|
||
- SFML
|
||
- TGui
|
||
- PugiXML
|
||
- GTest
|
||
|
||
## Structure
|
||
|
||
![UML Diagram](UML_Class_Diagram.png)
|
||
|
||
The class diagram omits most constructors and getters.
|
||
|
||
## TODO
|
||
|
||
- [x] Level
|
||
- [x] Structure
|
||
- [x] Parsing from XML
|
||
- [x] A*
|
||
- [x] Entities
|
||
- [x] Structure
|
||
- [x] Parsing from XML
|
||
- [x] Moving
|
||
- [x] Decorators (Rules)
|
||
- [ ] Rules
|
||
- [x] Creation
|
||
- [x] Interaction with entities
|
||
- [x] Parsing of rules and creation of subsequent decorators
|
||
- [x] Find optimal target for pathfinding
|
||
- [ ] Other rules (Waiting...)
|
||
- [ ] Graphics
|
||
- [x] Scene rendering
|
||
- [x] Some kind of UI
|
||
- [ ] UI
|
||
- [ ] Menu ?
|
||
- [ ] Gameloop
|
||
- [x] Transition from starting to running state and vice-versa
|
||
- [x] Entity behaviour evolution
|
||
- [x] Rule application
|
||
- [ ] Win condition
|
||
- [ ] ~~Saving state through serialization ?~~
|
||
- [x] UML
|
||
- [ ] Unit tests |