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 FATFileSystem
Menu/Menu.cpp
- Committer:
- ellisbhastroud
- Date:
- 2019-03-20
- Revision:
- 2:81cfa8310f55
- Parent:
- 1:6179c2d67d19
- Child:
- 3:a8960004d261
File content as of revision 2:81cfa8310f55:
#include "Menu.h"
// constructor
Menu::Menu()
{
}
//deconstructor
Menu::~Menu()
{
}
//public methods
void Menu::print_welcome(N5110 &lcd)
{
lcd.clear();
lcd.printString("Welcome to",0,0);
lcd.printString("GAME",0,1);
lcd.printString("by",0,2);
lcd.printString("Ellis Blackford Stroud",0,3);
lcd.refresh();
}
void Menu::print_menu(N5110 &lcd)
{
lcd.clear();
lcd.printString("Use joystick",0,2);
lcd.printString("to select !",0,3);
wait(2);
lcd.clear();
lcd.printString("Start Game",10,0);
lcd.printString("Highscores",10,2);
lcd.printString("Settings",10,4);
lcd.refresh();
}
void Menu::print_highscores(N5110 &lcd)
{
lcd.clear();
lcd.printString("Highscores",0,2);
lcd.refresh();
}
void Menu::print_settings(N5110 &lcd)
{
lcd.clear();
lcd.printString("Settings",0,2);
lcd.refresh();
}
void Menu::print_start(N5110 &lcd)
{
lcd.clear();
lcd.printString("Start?",0,2);
lcd.refresh();
}
//Uses joystick direction to select menu option
MenuChoices Menu::menu_choice(MenuChoices menu, Gamepad &pad, N5110 &lcd)
{
int d = pad.get_direction();
MenuChoices m = menu;
switch(m) {
//cursor on start
case 0:
lcd.drawRect(0,16,6,8,FILL_WHITE);
lcd.drawRect(0,32,6,8,FILL_WHITE);
lcd.drawRect(0,0,6,8,FILL_TRANSPARENT);
switch(d) {
case 0: //joystick centered
m = START;
break;
case 1: //joystick up
m = SETTINGS;
break;
case 5: //joystick down
m = HIGHSCORES;
break;
}
break;
//cursor on highscores
case 1:
lcd.drawRect(0,0,6,8,FILL_WHITE);
lcd.drawRect(0,32,6,8,FILL_WHITE);
lcd.drawRect(0,16,6,8,FILL_TRANSPARENT);
switch(d) {
case 0: //joystick centered
m = HIGHSCORES;
break;
case 1: //joystick up
m = START;
break;
case 5: //joystick down
m = SETTINGS;
break;
}
break;
//cursor on settings
case 2:
lcd.drawRect(0,0,6,8,FILL_WHITE);
lcd.drawRect(0,16,6,8,FILL_WHITE);
lcd.drawRect(0,32,6,8,FILL_TRANSPARENT);
switch(d) {
case 0: //joystick centered
m = SETTINGS;
break;
case 1: //joystick up
m = HIGHSCORES;
break;
case 5: //joystick down
m = START;
break;
}
break;
}
return m;
}
//private methods