Menu class used as basis for program; running the game and allowing the user to change the style and difficulty of the game via an interface.

Committer:
el15mh
Date:
Fri Apr 07 10:28:49 2017 +0000
Revision:
2:917211a4551b
Parent:
1:21b7a5edb9c2
Child:
3:a79daa7c2b55
whole program basic with menu interface

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el15mh 0:b32f6570a26d 1 /*
el15mh 1:21b7a5edb9c2 2
el15mh 1:21b7a5edb9c2 3 @file Menu.h
el15mh 1:21b7a5edb9c2 4
el15mh 1:21b7a5edb9c2 5 (c) Max Houghton 02.14.17
el15mh 1:21b7a5edb9c2 6 Roller Maze Project, ELEC2645, Univeristy of Leeds
el15mh 1:21b7a5edb9c2 7
el15mh 1:21b7a5edb9c2 8 */
el15mh 0:b32f6570a26d 9
el15mh 0:b32f6570a26d 10 #ifndef MENU_H
el15mh 0:b32f6570a26d 11 #define MENU_H
el15mh 0:b32f6570a26d 12
el15mh 0:b32f6570a26d 13 #include "mbed.h"
el15mh 0:b32f6570a26d 14 #include "N5110.h"
el15mh 0:b32f6570a26d 15 #include "Gamepad.h"
el15mh 2:917211a4551b 16 #include "MazeEngine.h"
el15mh 2:917211a4551b 17 #include "Maze.h"
el15mh 2:917211a4551b 18 #include "Ball.h"
el15mh 0:b32f6570a26d 19
el15mh 0:b32f6570a26d 20 class Menu
el15mh 0:b32f6570a26d 21 {
el15mh 2:917211a4551b 22
el15mh 0:b32f6570a26d 23 public:
el15mh 0:b32f6570a26d 24
el15mh 0:b32f6570a26d 25 Menu();
el15mh 0:b32f6570a26d 26 ~Menu();
el15mh 0:b32f6570a26d 27
el15mh 2:917211a4551b 28 void init(int mazeIndex);
el15mh 2:917211a4551b 29 void main(N5110 &lcd, Gamepad &pad, FXOS8700CQ &device);
el15mh 2:917211a4551b 30 void intro(N5110 &lcd, Gamepad &pad);
el15mh 2:917211a4551b 31 void playGame(int mazeIndex, N5110 &lcd, Gamepad &pad, FXOS8700CQ &device);
el15mh 1:21b7a5edb9c2 32 void options(N5110 &lcd, Gamepad &pad);
el15mh 1:21b7a5edb9c2 33 void lcdSettings(N5110 &lcd, Gamepad &pad);
el15mh 1:21b7a5edb9c2 34 void soundSettings(N5110 &lcd, Gamepad &pad);
el15mh 2:917211a4551b 35 void controlOptions(N5110 &lcd, Gamepad &pad);
el15mh 1:21b7a5edb9c2 36 void difficultyOptions(N5110 &lcd, Gamepad &pad);
el15mh 1:21b7a5edb9c2 37 void lcdColourOptions(N5110 &lcd, Gamepad &pad);
el15mh 1:21b7a5edb9c2 38 void lcdInverseColour(N5110 &lcd, Gamepad &pad);
el15mh 1:21b7a5edb9c2 39 void lcdBackgroundColour(N5110 &lcd, Gamepad &pad);
el15mh 0:b32f6570a26d 40
el15mh 0:b32f6570a26d 41 private:
el15mh 2:917211a4551b 42
el15mh 2:917211a4551b 43 MazeEngine _engine;
el15mh 2:917211a4551b 44
el15mh 2:917211a4551b 45 void animateJoystick(N5110 &lcd);
el15mh 2:917211a4551b 46 void animateGamepad(N5110 &lcd);
el15mh 2:917211a4551b 47
el15mh 2:917211a4551b 48 void drawVerticalJoystick(N5110 &lcd);
el15mh 2:917211a4551b 49
el15mh 2:917211a4551b 50 bool CONTROL;
el15mh 2:917211a4551b 51
el15mh 2:917211a4551b 52 int _mazeIndex;
el15mh 2:917211a4551b 53
el15mh 0:b32f6570a26d 54 };
el15mh 0:b32f6570a26d 55
el15mh 2:917211a4551b 56 #endif /* MENU_H */