Zeyu Feng 201377605

Dependencies:   mbed

On Minerva

Committer:
el19zf
Date:
Mon May 11 09:09:31 2020 +0000
Revision:
11:494cc44777fe
Child:
12:009895f6b6e4
add Interface class and build the interaction with gamer

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el19zf 11:494cc44777fe 1 #ifndef INTERFACE_H
el19zf 11:494cc44777fe 2 #define INTERFACE_H
el19zf 11:494cc44777fe 3
el19zf 11:494cc44777fe 4 #include "mbed.h"
el19zf 11:494cc44777fe 5 #include "Gamepad.h"
el19zf 11:494cc44777fe 6 #include "N5110.h"
el19zf 11:494cc44777fe 7
el19zf 11:494cc44777fe 8 /** Interface class
el19zf 11:494cc44777fe 9 @welcome,meun,pause interface
el19zf 11:494cc44777fe 10 @author Zeyu Feng
el19zf 11:494cc44777fe 11 @10 MAY 2020
el19zf 11:494cc44777fe 12 */
el19zf 11:494cc44777fe 13 struct State{
el19zf 11:494cc44777fe 14 int option;
el19zf 11:494cc44777fe 15 int next_state[2];
el19zf 11:494cc44777fe 16 };
el19zf 11:494cc44777fe 17
el19zf 11:494cc44777fe 18 class Interface {
el19zf 11:494cc44777fe 19
el19zf 11:494cc44777fe 20 public:
el19zf 11:494cc44777fe 21
el19zf 11:494cc44777fe 22 Interface();//Constructor
el19zf 11:494cc44777fe 23
el19zf 11:494cc44777fe 24 ~Interface();//Destructor
el19zf 11:494cc44777fe 25
el19zf 11:494cc44777fe 26 void init();
el19zf 11:494cc44777fe 27
el19zf 11:494cc44777fe 28 //set a welcome interface for my game
el19zf 11:494cc44777fe 29 void Welcome(N5110 &lcd,Gamepad &pad);
el19zf 11:494cc44777fe 30
el19zf 11:494cc44777fe 31 //set an option menu
el19zf 11:494cc44777fe 32 int menu(N5110 &lcd,Gamepad &pad,int option_flag);
el19zf 11:494cc44777fe 33
el19zf 11:494cc44777fe 34 //if health of people is zero, game over~
el19zf 11:494cc44777fe 35 void game_over(N5110 &lcd,Gamepad &pad);
el19zf 11:494cc44777fe 36
el19zf 11:494cc44777fe 37 //check pause for start botton
el19zf 11:494cc44777fe 38 int check_pause(N5110 &lcd,Gamepad &pad,int paused_flag);
el19zf 11:494cc44777fe 39
el19zf 11:494cc44777fe 40 //count down and draw in lcd
el19zf 11:494cc44777fe 41 int count_down(N5110 &lcd,int count_flag);
el19zf 11:494cc44777fe 42
el19zf 11:494cc44777fe 43 //Exit interface
el19zf 11:494cc44777fe 44 void exit(N5110 &lcd,Gamepad &pad);
el19zf 11:494cc44777fe 45
el19zf 11:494cc44777fe 46 //Victory interface
el19zf 11:494cc44777fe 47 void victory(N5110 &lcd,Gamepad &pad);
el19zf 11:494cc44777fe 48
el19zf 11:494cc44777fe 49 private:
el19zf 11:494cc44777fe 50
el19zf 11:494cc44777fe 51 Timer _timer;
el19zf 11:494cc44777fe 52
el19zf 11:494cc44777fe 53 Direction _d;
el19zf 11:494cc44777fe 54
el19zf 11:494cc44777fe 55 };
el19zf 11:494cc44777fe 56 #endif