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.
Pause/Pause.h@29:42651f87522b, 2019-04-27 (annotated)
- Committer:
- JamesCummins
- Date:
- Sat Apr 27 12:50:30 2019 +0000
- Revision:
- 29:42651f87522b
- Parent:
- 22:4e305ff8a050
- Child:
- 37:de1f584bce71
Classic wall collision coded but always returning true (preventing classic from running) - needs debugging
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
JamesCummins | 20:4a39a1a2be51 | 1 | #ifndef PAUSE_H |
JamesCummins | 20:4a39a1a2be51 | 2 | #define PAUSE_H |
JamesCummins | 20:4a39a1a2be51 | 3 | |
JamesCummins | 20:4a39a1a2be51 | 4 | #include "mbed.h" |
JamesCummins | 20:4a39a1a2be51 | 5 | #include "Gamepad.h" |
JamesCummins | 29:42651f87522b | 6 | #include "ClassicEngine.h" |
JamesCummins | 20:4a39a1a2be51 | 7 | #include "N5110.h" |
JamesCummins | 20:4a39a1a2be51 | 8 | |
JamesCummins | 20:4a39a1a2be51 | 9 | enum Mode{ |
JamesCummins | 21:9d1447765ee1 | 10 | CLASSIC_MODE, |
JamesCummins | 21:9d1447765ee1 | 11 | BRICKBREAKER_MODE |
JamesCummins | 20:4a39a1a2be51 | 12 | }; |
JamesCummins | 20:4a39a1a2be51 | 13 | |
JamesCummins | 20:4a39a1a2be51 | 14 | enum PauseOption{ |
JamesCummins | 20:4a39a1a2be51 | 15 | RESUME, |
JamesCummins | 20:4a39a1a2be51 | 16 | RESTART, |
JamesCummins | 20:4a39a1a2be51 | 17 | QUIT, |
JamesCummins | 20:4a39a1a2be51 | 18 | HELP |
JamesCummins | 20:4a39a1a2be51 | 19 | }; |
JamesCummins | 20:4a39a1a2be51 | 20 | |
JamesCummins | 20:4a39a1a2be51 | 21 | struct PauseSelection{ |
JamesCummins | 20:4a39a1a2be51 | 22 | int output; |
JamesCummins | 20:4a39a1a2be51 | 23 | PauseOption next_state[3]; |
JamesCummins | 20:4a39a1a2be51 | 24 | }; |
JamesCummins | 20:4a39a1a2be51 | 25 | |
JamesCummins | 20:4a39a1a2be51 | 26 | class Pause { |
JamesCummins | 20:4a39a1a2be51 | 27 | |
JamesCummins | 20:4a39a1a2be51 | 28 | public: |
JamesCummins | 22:4e305ff8a050 | 29 | //constructor |
JamesCummins | 22:4e305ff8a050 | 30 | Pause(); |
JamesCummins | 22:4e305ff8a050 | 31 | //destructor |
JamesCummins | 22:4e305ff8a050 | 32 | ~Pause(); |
JamesCummins | 22:4e305ff8a050 | 33 | //initialiser |
JamesCummins | 22:4e305ff8a050 | 34 | void init(); |
JamesCummins | 22:4e305ff8a050 | 35 | //accessor |
JamesCummins | 29:42651f87522b | 36 | PauseOption pause_menu(Gamepad &gamepad, N5110 &lcd, int fps); |
JamesCummins | 29:42651f87522b | 37 | int brickbreaker_action(PauseOption choice, Gamepad &gamepad, N5110 &lcd, int frame, int fps); |
JamesCummins | 29:42651f87522b | 38 | void classic_help(Gamepad &gamepad, N5110 &lcd); |
JamesCummins | 29:42651f87522b | 39 | void brickbreaker_help(Gamepad &gamepad, N5110 &lcd); |
JamesCummins | 20:4a39a1a2be51 | 40 | |
JamesCummins | 20:4a39a1a2be51 | 41 | private: |
JamesCummins | 20:4a39a1a2be51 | 42 | |
JamesCummins | 22:4e305ff8a050 | 43 | void display_pause_options(N5110 &lcd); |
JamesCummins | 22:4e305ff8a050 | 44 | PauseOption pause_selection(Gamepad &gamepad, N5110 &lcd); |
JamesCummins | 22:4e305ff8a050 | 45 | PauseOption _state; |
JamesCummins | 22:4e305ff8a050 | 46 | int _next_state; |
JamesCummins | 20:4a39a1a2be51 | 47 | }; |
JamesCummins | 20:4a39a1a2be51 | 48 | #endif |