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: N5110 PinDetect PowerControl mbed
SubmitHighscore.h@17:d6a3b29cab31, 2015-05-11 (annotated)
- Committer:
- Siriagus
- Date:
- Mon May 11 03:52:18 2015 +0000
- Revision:
- 17:d6a3b29cab31
- Child:
- 18:709ea375b0df
Added sound effects ++
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Siriagus | 17:d6a3b29cab31 | 1 | #ifndef SUBMIT_HIGHSCORE_H |
Siriagus | 17:d6a3b29cab31 | 2 | #define SUBMIT_HIGHSCORE_H |
Siriagus | 17:d6a3b29cab31 | 3 | |
Siriagus | 17:d6a3b29cab31 | 4 | #include "State.h" |
Siriagus | 17:d6a3b29cab31 | 5 | #include "Global.h" |
Siriagus | 17:d6a3b29cab31 | 6 | #include <cstdlib> |
Siriagus | 17:d6a3b29cab31 | 7 | #include <string> |
Siriagus | 17:d6a3b29cab31 | 8 | #include <sstream> |
Siriagus | 17:d6a3b29cab31 | 9 | |
Siriagus | 17:d6a3b29cab31 | 10 | /// @file SubmitHighscore.h |
Siriagus | 17:d6a3b29cab31 | 11 | |
Siriagus | 17:d6a3b29cab31 | 12 | /// State: Submit Highscore |
Siriagus | 17:d6a3b29cab31 | 13 | /// Displays a screen where the user is promted to input his or her initials |
Siriagus | 17:d6a3b29cab31 | 14 | class SubmitHighscore : public State |
Siriagus | 17:d6a3b29cab31 | 15 | { |
Siriagus | 17:d6a3b29cab31 | 16 | public: |
Siriagus | 17:d6a3b29cab31 | 17 | SubmitHighscore(StateManager* fsm, N5110 *lcd, InputManager* input, Sound* sound) |
Siriagus | 17:d6a3b29cab31 | 18 | : State(fsm, lcd, input, sound) {init();} |
Siriagus | 17:d6a3b29cab31 | 19 | |
Siriagus | 17:d6a3b29cab31 | 20 | void init(); |
Siriagus | 17:d6a3b29cab31 | 21 | virtual void update(float dt); /// Update logic |
Siriagus | 17:d6a3b29cab31 | 22 | virtual void render(); /// Draw to screen |
Siriagus | 17:d6a3b29cab31 | 23 | |
Siriagus | 17:d6a3b29cab31 | 24 | private: |
Siriagus | 17:d6a3b29cab31 | 25 | static void btnAPress(); /// Interrupt callback function when button A is pressed |
Siriagus | 17:d6a3b29cab31 | 26 | static void btnBPress(); /// Interrupt callback function when button B is pressed |
Siriagus | 17:d6a3b29cab31 | 27 | static void btnCPress(); /// Interrupt callback function when button C is pressed |
Siriagus | 17:d6a3b29cab31 | 28 | |
Siriagus | 17:d6a3b29cab31 | 29 | |
Siriagus | 17:d6a3b29cab31 | 30 | private: |
Siriagus | 17:d6a3b29cab31 | 31 | enum SubmitHighscoreState{LETTER1, LETTER2, LETTER3, SEL_SUBMIT, WRITE_TO_FILE, LOAD_GAME_OVER}; |
Siriagus | 17:d6a3b29cab31 | 32 | static int currentState; |
Siriagus | 17:d6a3b29cab31 | 33 | /** Changes the current selected letter. |
Siriagus | 17:d6a3b29cab31 | 34 | * @param index The index of the letter to be changed (0, 1 or 2) |
Siriagus | 17:d6a3b29cab31 | 35 | * @param next Goes to the next letter in the alphabet if true. Goes to the previous letter if false. |
Siriagus | 17:d6a3b29cab31 | 36 | */ |
Siriagus | 17:d6a3b29cab31 | 37 | static void changeLetter(int index, bool next); |
Siriagus | 17:d6a3b29cab31 | 38 | static int letters[3]; |
Siriagus | 17:d6a3b29cab31 | 39 | }; |
Siriagus | 17:d6a3b29cab31 | 40 | |
Siriagus | 17:d6a3b29cab31 | 41 | #endif |