Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Levelengine/Levelengine.h@25:7fb1b6fa9137, 2019-04-08 (annotated)
- Committer:
- el17arm
- Date:
- Mon Apr 08 22:31:07 2019 +0000
- Revision:
- 25:7fb1b6fa9137
- Parent:
- 24:9c7aca60e374
Committing this version as suddenly won't move left, reverting to earlier version to find where error has crept in
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| el17arm | 2:725c213b2396 | 1 | #ifndef Levelengine_H |
| el17arm | 2:725c213b2396 | 2 | #define Levelengine_H |
| el17arm | 2:725c213b2396 | 3 | |
| el17arm | 2:725c213b2396 | 4 | #include "mbed.h" |
| el17arm | 2:725c213b2396 | 5 | #include "N5110.h" |
| el17arm | 2:725c213b2396 | 6 | #include "Gamepad.h" |
| el17arm | 2:725c213b2396 | 7 | |
| el17arm | 25:7fb1b6fa9137 | 8 | const int big_block[9] = { |
| el17arm | 14:dc3524d11921 | 9 | 1,1,1, |
| el17arm | 14:dc3524d11921 | 10 | 1,0,1, |
| el17arm | 14:dc3524d11921 | 11 | 1,1,1, |
| el17arm | 14:dc3524d11921 | 12 | }; |
| el17arm | 16:8384e9a480ef | 13 | |
| el17arm | 16:8384e9a480ef | 14 | const int key[12] = { |
| el17arm | 16:8384e9a480ef | 15 | 1,1,0,0, |
| el17arm | 16:8384e9a480ef | 16 | 1,0,1,1, |
| el17arm | 16:8384e9a480ef | 17 | 1,1,0,1, |
| el17arm | 16:8384e9a480ef | 18 | }; |
| el17arm | 16:8384e9a480ef | 19 | |
| el17arm | 17:b4079bd0e551 | 20 | const int key_collected[12] = { |
| el17arm | 17:b4079bd0e551 | 21 | 0,0,0,0, |
| el17arm | 17:b4079bd0e551 | 22 | 0,0,0,0, |
| el17arm | 17:b4079bd0e551 | 23 | 0,0,0,0, |
| el17arm | 17:b4079bd0e551 | 24 | }; |
| el17arm | 18:ff0a53dcb862 | 25 | |
| el17arm | 18:ff0a53dcb862 | 26 | const int spike[9] = { |
| el17arm | 18:ff0a53dcb862 | 27 | |
| el17arm | 18:ff0a53dcb862 | 28 | 1,1,1, |
| el17arm | 18:ff0a53dcb862 | 29 | 0,1,0, |
| el17arm | 18:ff0a53dcb862 | 30 | 1,1,1, |
| el17arm | 18:ff0a53dcb862 | 31 | }; |
| el17arm | 20:78bd235f8caa | 32 | |
| el17arm | 20:78bd235f8caa | 33 | const int door[30] = { |
| el17arm | 20:78bd235f8caa | 34 | |
| el17arm | 20:78bd235f8caa | 35 | 1,1,1,1,1, |
| el17arm | 20:78bd235f8caa | 36 | 1,0,1,0,1, |
| el17arm | 20:78bd235f8caa | 37 | 1,1,0,1,1, |
| el17arm | 20:78bd235f8caa | 38 | 1,0,1,0,1, |
| el17arm | 20:78bd235f8caa | 39 | 1,1,0,1,1, |
| el17arm | 20:78bd235f8caa | 40 | 1,0,1,0,1, |
| el17arm | 25:7fb1b6fa9137 | 41 | }; |
| el17arm | 17:b4079bd0e551 | 42 | |
| el17arm | 24:9c7aca60e374 | 43 | typedef struct { |
| el17arm | 24:9c7aca60e374 | 44 | bool key[5]; |
| el17arm | 25:7fb1b6fa9137 | 45 | } Key; |
| el17arm | 14:dc3524d11921 | 46 | |
| el17arm | 2:725c213b2396 | 47 | class Levelengine |
| el17arm | 2:725c213b2396 | 48 | { |
| el17arm | 2:725c213b2396 | 49 | public: |
| el17arm | 2:725c213b2396 | 50 | |
| el17arm | 2:725c213b2396 | 51 | Levelengine(); |
| el17arm | 2:725c213b2396 | 52 | ~Levelengine(); |
| el17arm | 18:ff0a53dcb862 | 53 | |
| el17arm | 16:8384e9a480ef | 54 | void soft_blocks(int x, int y, N5110 &lcd); |
| el17arm | 25:7fb1b6fa9137 | 55 | bool solid_block(int x, int y, N5110 &lcd); |
| el17arm | 24:9c7aca60e374 | 56 | void key_collect(int k, int x, int y, N5110 &lcd, Gamepad &pad); |
| el17arm | 25:7fb1b6fa9137 | 57 | bool trap(int x, int y, N5110 &lcd); |
| el17arm | 25:7fb1b6fa9137 | 58 | bool exit(int x, int y, N5110 &lcd); |
| el17arm | 12:adf4ec04ced2 | 59 | |
| el17arm | 25:7fb1b6fa9137 | 60 | int keys_collected(); |
| el17arm | 2:725c213b2396 | 61 | |
| el17arm | 2:725c213b2396 | 62 | private: |
| el17arm | 16:8384e9a480ef | 63 | |
| el17arm | 15:2bda80896a84 | 64 | int _collision; |
| el17arm | 17:b4079bd0e551 | 65 | bool key_collect1; //ensures loop is only executed once and key does not reappear |
| el17arm | 17:b4079bd0e551 | 66 | bool key_collect2; |
| el17arm | 17:b4079bd0e551 | 67 | bool key_collect3; |
| el17arm | 17:b4079bd0e551 | 68 | bool key_collect4; |
| el17arm | 17:b4079bd0e551 | 69 | bool key_collect5; |
| el17arm | 17:b4079bd0e551 | 70 | int _keys; |
| el17arm | 25:7fb1b6fa9137 | 71 | Key _k; |
| el17arm | 25:7fb1b6fa9137 | 72 | |
| el17arm | 18:ff0a53dcb862 | 73 | |
| el17arm | 2:725c213b2396 | 74 | }; |
| el17arm | 2:725c213b2396 | 75 | |
| el17arm | 2:725c213b2396 | 76 | #endif |