parent
19bf777484
commit
ffdd23c402
52
README.md
52
README.md
|
@ -2,58 +2,81 @@
|
||||||
|
|
||||||
# [PyDev] Project 3
|
# [PyDev] Project 3
|
||||||
|
|
||||||
#### Help McGyver to escape!
|
#### Help MacGyver to escape!
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
### Summary
|
### Summary
|
||||||
|
|
||||||
Imagine a 2D labyrinth in which _McGyver_ would have been locked up.
|
Imagine a 2D labyrinth in which _[MacGyver](https://en.wikipedia.org/wiki/MacGyver_(1985_TV_series))_ would have been locked up.
|
||||||
The exit is watched over by a bodyguard. To distract him, you need to
|
The exit is watched over by a bodyguard. To distract him, you need to
|
||||||
combine the following elements dispersed in the labyrinth:
|
combine the following elements dispersed in the labyrinth:
|
||||||
|
|
||||||
* a needle
|
* a needle
|
||||||
* a small plastic tube
|
* a tube
|
||||||
* ether
|
* ether
|
||||||
|
|
||||||
They'll allow _McGyver_ to create a syringe and put our guard asleep.
|
They'll allow _MacGyver_ to create a syringe and put our guard asleep.
|
||||||
|
|
||||||
|
### Usage
|
||||||
|
|
||||||
|
This have been made with `python 3.6.4` and `pygame 1.9.3`
|
||||||
|
|
||||||
|
#### On Linux
|
||||||
|
|
||||||
|
1. Clone repo: `git clone https://github.com/freezed/ocp3`
|
||||||
|
2. Install dependences: `cd ocp3; pip3 install -r requirement.txt`
|
||||||
|
3. Run it: `python3 main.py`
|
||||||
|
|
||||||
|
#### Other OS
|
||||||
|
|
||||||
|
Feel free to contribute, I do not use other OS
|
||||||
|
|
||||||
|
### Files
|
||||||
|
|
||||||
|
* `main.py`, main script the one to run
|
||||||
|
* `conf.py`, place for variables, constants and fuctions
|
||||||
|
* `map.py`, map class
|
||||||
|
* `README.md`, you're reading it!
|
||||||
|
* `requirement.txt`, dependences for feeding pip
|
||||||
|
* `01.map`, file of the map
|
||||||
|
* `img/`, place for images (tiles) files
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
|
|
||||||
* One level. The structure (departure, location of the walls, arrival),
|
* One level. The structure (departure, location of the walls, arrival),
|
||||||
should be saved in a file to easily modify it if necessary.
|
should be saved in a file to easily modify it if necessary.
|
||||||
* _McGyver_ will be controlled by the directional keys on the keyboard.
|
* _MacGyver_ will be controlled by the directional keys on the keyboard.
|
||||||
* The objects will be randomly distributed in the maze and will change
|
* The objects will be randomly distributed in the maze and will change
|
||||||
locations if the user closes the game and raises it.
|
locations if the user closes the game and raises it.
|
||||||
* The game window will be a square of 15 sprites length.
|
* The game window will be a square of 15 sprites length.
|
||||||
* _McGyver_ will have to move from square to square, with 15 squares along
|
* _MacGyver_ will have to move from square to square, with 15 squares along
|
||||||
the window's length
|
the window's length
|
||||||
* It will retrieve an object simply by moving on it.
|
* It will retrieve an object simply by moving on it.
|
||||||
* The program stops only if _McGyver_ has recovered all objects and found
|
* The program stops only if _MacGyver_ has recovered all objects and found
|
||||||
the exit from the maze. If he stupid enough to comes in front of the the
|
the exit from the maze. If he stupid enough to comes in front of the the
|
||||||
guard without all the objects, he dies (according to the evolution theory).
|
guard without all the objects, he dies (according to the evolution theory).
|
||||||
* The program will be standalone, i. e. it can be run on any computer.
|
* The program will be standalone, i. e. it can be run on any computer.
|
||||||
|
|
||||||
### Steps
|
### Roadmap
|
||||||
|
|
||||||
1. Create the starting frame
|
1. Create the starting frame
|
||||||
* [x] Initialize a Git repo on Github
|
* [x] Initialize a Git repo on Github
|
||||||
* [x] Create the labyrinth without the graphical user interface
|
* [x] Create the labyrinth without the graphical user interface
|
||||||
* [x] Start the graphical interface with PyGame
|
* [x] Start the graphical interface with PyGame
|
||||||
* [x] Represent the guard, _McGyver_ and the objects in your program
|
* [x] Represent the guard, _MacGyver_ and the objects in your program
|
||||||
and placed them at the beginning of the game
|
and placed them at the beginning of the game
|
||||||
2. Animate the character
|
2. Animate the character
|
||||||
* [x] The only moving element is _McGyver_, create classes methods for
|
* [x] The only moving element is _MacGyver_, create classes methods for
|
||||||
animation and finding the exit
|
animation and finding the exit
|
||||||
* [x] make a simplified version of the game in which _McGyver_ wins
|
* [x] make a simplified version of the game in which _MacGyver_ wins
|
||||||
when he arrives in front of the goalkeeper
|
when he arrives in front of the goalkeeper
|
||||||
3. Recovering objects
|
3. Recovering objects
|
||||||
* [x] Add object management
|
* [x] Add object management
|
||||||
* [x] The way he pick them up
|
* [x] The way he pick them up
|
||||||
* [x] Add a counter that will list them.
|
* [x] Add a counter that will list them.
|
||||||
4. Win!
|
4. Win!
|
||||||
* [x] _McGyver_ has picked up all the objects and asleep the guard
|
* [x] _MacGyver_ has picked up all the objects and asleep the guard
|
||||||
|
|
||||||
### Deliverables
|
### Deliverables
|
||||||
|
|
||||||
|
@ -69,8 +92,3 @@ guard without all the objects, he dies (according to the evolution theory).
|
||||||
* follow the good practices of PEP 8
|
* follow the good practices of PEP 8
|
||||||
* develop in a virtual environment using Python 3
|
* develop in a virtual environment using Python 3
|
||||||
* code must be written in English
|
* code must be written in English
|
||||||
|
|
||||||
## Dependances
|
|
||||||
|
|
||||||
* pygame 1.9.3
|
|
||||||
* python 3.6.4
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user