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
Fork of el17ajf by
Menus/ScoresMenu/ScoresMenu.cpp@29:d59fbe128d1f, 2019-04-13 (annotated)
- Committer:
- el17ajf
- Date:
- Sat Apr 13 08:33:49 2019 +0000
- Revision:
- 29:d59fbe128d1f
- Parent:
- 28:e09b7ac11dea
- Child:
- 32:7b5a864b9234
fixed hidden height zone
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
el17ajf | 21:62d2b5b73160 | 1 | #include "ScoresMenu.h" |
el17ajf | 27:2ed9e3c9f4e9 | 2 | #include "Prefs.h" |
el17ajf | 27:2ed9e3c9f4e9 | 3 | |
el17ajf | 27:2ed9e3c9f4e9 | 4 | Menus::ScoresMenu::ScoresMenu() { |
el17ajf | 29:d59fbe128d1f | 5 | lastPlayerPos = -1; |
el17ajf | 29:d59fbe128d1f | 6 | int lastPlayer = Prefs::getInstance()->getKey(Prefs::LAST_PLAYER); |
el17ajf | 29:d59fbe128d1f | 7 | |
el17ajf | 27:2ed9e3c9f4e9 | 8 | int highscores[3]; |
el17ajf | 27:2ed9e3c9f4e9 | 9 | int players[3]; |
el17ajf | 27:2ed9e3c9f4e9 | 10 | |
el17ajf | 27:2ed9e3c9f4e9 | 11 | players[0] = Prefs::getInstance()->getKey(Prefs::HIGHSCORE1_PLAYER); |
el17ajf | 27:2ed9e3c9f4e9 | 12 | players[1] = Prefs::getInstance()->getKey(Prefs::HIGHSCORE2_PLAYER); |
el17ajf | 27:2ed9e3c9f4e9 | 13 | players[2] = Prefs::getInstance()->getKey(Prefs::HIGHSCORE3_PLAYER); |
el17ajf | 27:2ed9e3c9f4e9 | 14 | |
el17ajf | 27:2ed9e3c9f4e9 | 15 | highscores[0] = Prefs::getInstance()->getKey(Prefs::HIGHSCORE1); |
el17ajf | 27:2ed9e3c9f4e9 | 16 | highscores[1] = Prefs::getInstance()->getKey(Prefs::HIGHSCORE2); |
el17ajf | 27:2ed9e3c9f4e9 | 17 | highscores[2] = Prefs::getInstance()->getKey(Prefs::HIGHSCORE3); |
el17ajf | 27:2ed9e3c9f4e9 | 18 | |
el17ajf | 27:2ed9e3c9f4e9 | 19 | for (int i = 0; i < 3; i++) { |
el17ajf | 27:2ed9e3c9f4e9 | 20 | if (players[i] == Prefs::EMPTY) { |
el17ajf | 27:2ed9e3c9f4e9 | 21 | sprintf(playersLables[i], "%1d. ---", i + 1); |
el17ajf | 27:2ed9e3c9f4e9 | 22 | sprintf(highscoresLabels[i], " "); |
el17ajf | 27:2ed9e3c9f4e9 | 23 | } else { |
el17ajf | 27:2ed9e3c9f4e9 | 24 | sprintf(playersLables[i], "%1d.PLYR %2d", i + 1, players[i]); |
el17ajf | 27:2ed9e3c9f4e9 | 25 | sprintf(highscoresLabels[i], " %4dPTS", highscores[i]); |
el17ajf | 27:2ed9e3c9f4e9 | 26 | } |
el17ajf | 27:2ed9e3c9f4e9 | 27 | } |
el17ajf | 29:d59fbe128d1f | 28 | |
el17ajf | 29:d59fbe128d1f | 29 | for (int i = 0; i < 3; i++) { |
el17ajf | 29:d59fbe128d1f | 30 | if (players[i] == lastPlayer) { |
el17ajf | 29:d59fbe128d1f | 31 | lastPlayerPos = i; |
el17ajf | 29:d59fbe128d1f | 32 | } |
el17ajf | 29:d59fbe128d1f | 33 | } |
el17ajf | 27:2ed9e3c9f4e9 | 34 | } |
el17ajf | 21:62d2b5b73160 | 35 | |
el17ajf | 21:62d2b5b73160 | 36 | void Menus::ScoresMenu::updateAndDraw(UI * ui) { |
el17ajf | 21:62d2b5b73160 | 37 | ui->drawTitle("hi scores"); |
el17ajf | 21:62d2b5b73160 | 38 | ui->newLine(); |
el17ajf | 27:2ed9e3c9f4e9 | 39 | for (int i = 0; i < 3; i++) { |
el17ajf | 29:d59fbe128d1f | 40 | if (i == lastPlayerPos) { |
el17ajf | 29:d59fbe128d1f | 41 | ui->drawFlashingLabel(playersLables[i]); |
el17ajf | 29:d59fbe128d1f | 42 | ui->drawFlashingLabel(highscoresLabels[i]); |
el17ajf | 29:d59fbe128d1f | 43 | } else { |
el17ajf | 29:d59fbe128d1f | 44 | ui->drawLabel(playersLables[i]); |
el17ajf | 29:d59fbe128d1f | 45 | ui->drawLabel(highscoresLabels[i]); |
el17ajf | 29:d59fbe128d1f | 46 | } |
el17ajf | 27:2ed9e3c9f4e9 | 47 | } |
el17ajf | 21:62d2b5b73160 | 48 | if (ui->drawAndCheckButton("back")) { |
el17ajf | 21:62d2b5b73160 | 49 | close(); |
el17ajf | 21:62d2b5b73160 | 50 | } |
el17ajf | 21:62d2b5b73160 | 51 | } |