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.
Diff: Menus/Menu.cpp
- Revision:
- 0:07c4fef6c0af
- Child:
- 4:0f2006e9c8f8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Menus/Menu.cpp Wed May 08 21:44:02 2019 +0000
@@ -0,0 +1,158 @@
+#include "Menu.h"
+
+Menu::Menu() {
+
+}
+
+Menu::~Menu() {
+
+}
+
+int Menu::input( int select,Gamepad &pad)
+{
+ Direction d;
+ d = pad.get_direction();
+ if(d == N)
+ {
+ select= select - 1;
+ }
+
+ if (d == S)
+ {
+ select = select + 1;
+ }
+ return select;
+}
+
+
+void Menu::menus(N5110 &lcd, Gamepad &pad)
+{
+ go_on = 0;
+ sel = 0;
+ while(go_on == 0)
+ {
+ sel = input(sel,pad);
+ wait_ms(200);
+ switch (sel)
+ {
+ case 0:
+ lcd.clear();
+ lcd.printString(" MENU ",0,0);
+ lcd.printString(" (PRASS A) ",0,1);
+ lcd.printString(">PLAY GAME",0,2);
+ lcd.printString("TUTORIAL",0,3);
+ lcd.printString("VERSION",0,4);
+ lcd.refresh();
+
+ if (pad.check_event(Gamepad::A_PRESSED)){
+ go_on = 1;
+ }
+ break;
+
+ case 1:
+ lcd.clear();
+ lcd.printString(" MENU ",0,0);
+ lcd.printString(" (PRASS A) ",0,1);
+ lcd.printString("PLAY GAME",0,2);
+ lcd.printString(">TUTORIAL",0,3);
+ lcd.printString("VERSION",0,4);
+ lcd.refresh();
+
+ // either clicking joystick or pressing A selects function
+ if (pad.check_event(Gamepad::A_PRESSED))
+ {
+ lcd.clear();
+ lcd.printString("PUSH JOYSTICK ",0,1);
+ lcd.printString(" TO CTRL ",0,2);
+ lcd.printString(" DIRCTION ",0,3);
+ lcd.refresh();
+ //printf("Direction = %i\n");
+ wait_ms (1000);
+ }
+
+ break;
+
+ case 2:
+ lcd.clear();
+ lcd.printString(" MENU ",0,0);
+ lcd.printString(" (PRASS A) ",0,1);
+ lcd.printString("PLAY GAME",0,2);
+ lcd.printString("TUTORIAL",0,3);
+ lcd.printString(">VERSION",0,4);
+ lcd.refresh();
+
+ if (pad.check_event(Gamepad::A_PRESSED))
+ {
+ lcd.clear();
+ lcd.printString(" V1.0.0 ",0,1);
+ lcd.printString(" Auther ",0,3);
+ lcd.printString(" ZHOU JIAXIN ",0,4);
+ lcd.refresh();
+ wait_ms(1000);
+ //printf("Direction = %i\n");
+ }
+ break;
+
+
+ }
+
+ }
+}
+
+int Menu::difficulty(N5110 &lcd, Gamepad &pad) {
+ go_on = 0;
+ while(go_on == 0)
+ {
+ sel = input(sel,pad);
+ wait_ms(200);
+ switch (sel)
+ {
+ case 0:
+ lcd.clear();
+ lcd.printString(" (PRASS A) ",0,1);
+ lcd.printString("> EASY ",0,2);
+ lcd.printString(" MEDIUM ",0,3);
+ lcd.printString(" HARD ",0,4);
+ lcd.refresh();
+ if (pad.check_event(Gamepad::A_PRESSED))
+ {
+ go_on = 1;
+ _fps = 6;
+ }
+ break;
+
+
+ case 1:
+ lcd.clear();
+ lcd.printString(" (PRASS A) ",0,1);
+ lcd.printString(" EASY ",0,2);
+ lcd.printString("> MEDIUM ",0,3);
+ lcd.printString(" HARD ",0,4);
+ lcd.refresh();
+ if (pad.check_event(Gamepad::A_PRESSED))
+ {
+ go_on = 1;
+ _fps = 8;
+ }
+ break;
+
+
+ case 2:
+ lcd.clear();
+ lcd.printString(" (PRASS A) ",0,1);
+ lcd.printString(" EASY ",0,2);
+ lcd.printString(" MEDIUM ",0,3);
+ lcd.printString("> HARD ",0,4);
+ lcd.refresh();
+ if (pad.check_event(Gamepad::A_PRESSED))
+ {
+ go_on = 1;
+ _fps = 11;
+ }
+ break;
+
+ }
+
+ }
+ return _fps;
+}
\ No newline at end of file