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
Imposs/ImpossEngine.h@7:35465b3bf586, 2020-05-18 (annotated)
- Committer:
- ll17lrc
- Date:
- Mon May 18 14:28:05 2020 +0000
- Revision:
- 7:35465b3bf586
- Parent:
- 4:a9d5fca3b7ba
- Child:
- 8:10eb578dd754
Ball moves, collisions detected correctly, levels 1 and 0 work, level finish works;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ll17lrc | 2:823dea76ff2e | 1 | #ifndef IMPOSSENGINE_H |
ll17lrc | 2:823dea76ff2e | 2 | #define IMPOSSENGINE_H |
ll17lrc | 2:823dea76ff2e | 3 | |
ll17lrc | 2:823dea76ff2e | 4 | #include "mbed.h" |
ll17lrc | 2:823dea76ff2e | 5 | #include "N5110.h" |
ll17lrc | 2:823dea76ff2e | 6 | #include "Gamepad.h" |
ll17lrc | 2:823dea76ff2e | 7 | #include "Ball.h" |
ll17lrc | 2:823dea76ff2e | 8 | #include "StartMenu.h" |
ll17lrc | 2:823dea76ff2e | 9 | #include "Zero.h" |
ll17lrc | 2:823dea76ff2e | 10 | #include "One.h" |
ll17lrc | 2:823dea76ff2e | 11 | |
ll17lrc | 2:823dea76ff2e | 12 | // gap from edge of screen |
ll17lrc | 2:823dea76ff2e | 13 | |
ll17lrc | 2:823dea76ff2e | 14 | class ImpossEngine |
ll17lrc | 2:823dea76ff2e | 15 | { |
ll17lrc | 2:823dea76ff2e | 16 | |
ll17lrc | 2:823dea76ff2e | 17 | public: |
ll17lrc | 2:823dea76ff2e | 18 | ImpossEngine(); |
ll17lrc | 2:823dea76ff2e | 19 | ~ImpossEngine(); |
ll17lrc | 2:823dea76ff2e | 20 | |
ll17lrc | 2:823dea76ff2e | 21 | void read_input(Gamepad &pad); |
ll17lrc | 7:35465b3bf586 | 22 | void update(Gamepad &pad,N5110 &lcd); |
ll17lrc | 2:823dea76ff2e | 23 | void draw(N5110 &lcd); |
ll17lrc | 4:a9d5fca3b7ba | 24 | void complete(Gamepad &pad,N5110 &lcd); |
ll17lrc | 4:a9d5fca3b7ba | 25 | void set_level_zero(); |
ll17lrc | 4:a9d5fca3b7ba | 26 | void set_level_one(); |
ll17lrc | 2:823dea76ff2e | 27 | |
ll17lrc | 2:823dea76ff2e | 28 | private: |
ll17lrc | 2:823dea76ff2e | 29 | |
ll17lrc | 4:a9d5fca3b7ba | 30 | void check_collision(Gamepad &pad, N5110 &lcd); |
ll17lrc | 7:35465b3bf586 | 31 | void check_finish(); |
ll17lrc | 2:823dea76ff2e | 32 | |
ll17lrc | 2:823dea76ff2e | 33 | Ball _ball; |
ll17lrc | 3:4494e6928194 | 34 | One _one; |
ll17lrc | 3:4494e6928194 | 35 | Zero _zero; |
ll17lrc | 4:a9d5fca3b7ba | 36 | |
ll17lrc | 4:a9d5fca3b7ba | 37 | int level; |
ll17lrc | 4:a9d5fca3b7ba | 38 | int x_pos; |
ll17lrc | 4:a9d5fca3b7ba | 39 | int y_pos; |
ll17lrc | 7:35465b3bf586 | 40 | int x; |
ll17lrc | 7:35465b3bf586 | 41 | int y; |
ll17lrc | 7:35465b3bf586 | 42 | int pos; |
ll17lrc | 2:823dea76ff2e | 43 | |
ll17lrc | 2:823dea76ff2e | 44 | Direction _d; |
ll17lrc | 2:823dea76ff2e | 45 | float _mag; |
ll17lrc | 2:823dea76ff2e | 46 | |
ll17lrc | 2:823dea76ff2e | 47 | }; |
ll17lrc | 2:823dea76ff2e | 48 | |
ll17lrc | 2:823dea76ff2e | 49 | #endif |