ELEC2645 (2018/19) / Mbed 2 deprecated el17set_

Dependencies:   mbed

Committer:
S_Tingle
Date:
Thu May 09 12:10:56 2019 +0000
Revision:
22:8e38efeae0c9
Parent:
18:ba4159ab4da7
Child:
25:1d3bf74dddeb
working

Who changed what in which revision?

UserRevisionLine numberNew contents of line
S_Tingle 14:d0650d0de063 1 #include "Menu.h"
S_Tingle 14:d0650d0de063 2
S_Tingle 22:8e38efeae0c9 3 Menu::Menu()
S_Tingle 22:8e38efeae0c9 4 {
S_Tingle 14:d0650d0de063 5
S_Tingle 14:d0650d0de063 6 }
S_Tingle 14:d0650d0de063 7
S_Tingle 22:8e38efeae0c9 8 Menu::~Menu()
S_Tingle 22:8e38efeae0c9 9 {
S_Tingle 14:d0650d0de063 10
S_Tingle 14:d0650d0de063 11 }
S_Tingle 14:d0650d0de063 12
S_Tingle 22:8e38efeae0c9 13 void Menu::init()
S_Tingle 22:8e38efeae0c9 14 {
S_Tingle 22:8e38efeae0c9 15
S_Tingle 14:d0650d0de063 16 }
S_Tingle 14:d0650d0de063 17
S_Tingle 22:8e38efeae0c9 18 void Menu::main(N5110 &lcd, Gamepad &pad)
S_Tingle 22:8e38efeae0c9 19 {
S_Tingle 22:8e38efeae0c9 20 // while not playing then main menu will display //
S_Tingle 17:ce6b54422113 21 play = false;
S_Tingle 16:37d98c281eb3 22 while (play == false) {
S_Tingle 16:37d98c281eb3 23 lcd.clear();
S_Tingle 22:8e38efeae0c9 24 lcd.printString("NEW GAME(X)", 10, 1);
S_Tingle 22:8e38efeae0c9 25 lcd.printString("GAME INFO(Y)", 10, 2);
S_Tingle 22:8e38efeae0c9 26 lcd.printString("CREDITS(B)", 10, 3);
S_Tingle 16:37d98c281eb3 27 lcd.refresh();
S_Tingle 16:37d98c281eb3 28 newGame(lcd,pad);
S_Tingle 16:37d98c281eb3 29 wait_ms(1000/60);
S_Tingle 16:37d98c281eb3 30 }
S_Tingle 17:ce6b54422113 31
S_Tingle 14:d0650d0de063 32 }
S_Tingle 14:d0650d0de063 33
S_Tingle 22:8e38efeae0c9 34 void Menu::newGame(N5110 &lcd, Gamepad &pad){
S_Tingle 22:8e38efeae0c9 35 // different path dependent on button press //
S_Tingle 22:8e38efeae0c9 36 // (so either new game, info or credits) //
S_Tingle 22:8e38efeae0c9 37 if (pad.check_event(Gamepad::X_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 38 play = true;
S_Tingle 22:8e38efeae0c9 39 } else if (pad.check_event(Gamepad::Y_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 40 info(lcd,pad);
S_Tingle 22:8e38efeae0c9 41 } else if(pad.check_event(Gamepad::B_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 42 credits(lcd,pad);
S_Tingle 22:8e38efeae0c9 43 } else {
S_Tingle 22:8e38efeae0c9 44 play = false;
S_Tingle 22:8e38efeae0c9 45 }
S_Tingle 14:d0650d0de063 46 }
S_Tingle 14:d0650d0de063 47
S_Tingle 22:8e38efeae0c9 48 void Menu::info(N5110 &lcd, Gamepad &pad)
S_Tingle 22:8e38efeae0c9 49 {
S_Tingle 22:8e38efeae0c9 50 // stays in menu until L is pressed //
S_Tingle 22:8e38efeae0c9 51 while (pad.check_event(Gamepad::L_PRESSED) == false){
S_Tingle 22:8e38efeae0c9 52 lcd.clear();
S_Tingle 22:8e38efeae0c9 53 lcd.printString("MOVE(J-STICK)", 5, 2);
S_Tingle 22:8e38efeae0c9 54 lcd.printString("10 HEALTH", 20, 3);
S_Tingle 22:8e38efeae0c9 55 lcd.printString("COLLECT COINS", 3, 4);
S_Tingle 22:8e38efeae0c9 56 lcd.refresh();
S_Tingle 22:8e38efeae0c9 57 // corrects error with pressing button that was unused //
S_Tingle 22:8e38efeae0c9 58 // which would have an effect when returning to main menu //
S_Tingle 22:8e38efeae0c9 59 if (pad.check_event(Gamepad::X_PRESSED) == true){
S_Tingle 16:37d98c281eb3 60 }
S_Tingle 22:8e38efeae0c9 61 if (pad.check_event(Gamepad::Y_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 62 }
S_Tingle 22:8e38efeae0c9 63 if (pad.check_event(Gamepad::B_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 64 }
S_Tingle 22:8e38efeae0c9 65 }
S_Tingle 16:37d98c281eb3 66 }
S_Tingle 16:37d98c281eb3 67
S_Tingle 22:8e38efeae0c9 68 void Menu::credits(N5110 &lcd, Gamepad &pad)
S_Tingle 22:8e38efeae0c9 69 {
S_Tingle 22:8e38efeae0c9 70 // stays in menu until L is pressed //
S_Tingle 22:8e38efeae0c9 71 while (pad.check_event(Gamepad::L_PRESSED) == false){
S_Tingle 22:8e38efeae0c9 72 lcd.clear();
S_Tingle 22:8e38efeae0c9 73 lcd.printString("CREATED BY", 10, 2);
S_Tingle 22:8e38efeae0c9 74 lcd.printString("SPENCER", 10, 3);
S_Tingle 22:8e38efeae0c9 75 lcd.printString("TINGLE", 10, 4);
S_Tingle 22:8e38efeae0c9 76 lcd.refresh();
S_Tingle 22:8e38efeae0c9 77 // corrects error with pressing button that was unused //
S_Tingle 22:8e38efeae0c9 78 // which would have an effect when returning to main menu //
S_Tingle 22:8e38efeae0c9 79 if (pad.check_event(Gamepad::X_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 80 pad.check_event(Gamepad::L_PRESSED) == false;
S_Tingle 16:37d98c281eb3 81 }
S_Tingle 22:8e38efeae0c9 82 if (pad.check_event(Gamepad::Y_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 83 pad.check_event(Gamepad::L_PRESSED) == false;
S_Tingle 22:8e38efeae0c9 84 }
S_Tingle 22:8e38efeae0c9 85 if (pad.check_event(Gamepad::B_PRESSED) == true){
S_Tingle 22:8e38efeae0c9 86 pad.check_event(Gamepad::L_PRESSED) == false;
S_Tingle 22:8e38efeae0c9 87 }
S_Tingle 22:8e38efeae0c9 88 }
S_Tingle 16:37d98c281eb3 89 }