
Zeyu Feng 201377605
Dependencies: mbed
On Minerva
Interface/Interface.h@20:a36ab1560e73, 2020-05-22 (annotated)
- Committer:
- el19zf
- Date:
- Fri May 22 03:54:22 2020 +0000
- Revision:
- 20:a36ab1560e73
- Parent:
- 19:5083339b55e8
- Child:
- 21:e3866e4fe5fb
add the Doxygen comments
Who changed what in which revision?
User | Revision | Line number | New 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 | 16:cf2bfada3adf | 7 | #include "Sound.h" |
el19zf | 11:494cc44777fe | 8 | |
el19zf | 11:494cc44777fe | 9 | /** Interface class |
el19zf | 16:cf2bfada3adf | 10 | *@brief welcome,meun,pause interface |
el19zf | 13:eb60628db8bf | 11 | *@author Zeyu Feng |
el19zf | 13:eb60628db8bf | 12 | *@10 MAY 2020 |
el19zf | 13:eb60628db8bf | 13 | */ |
el19zf | 20:a36ab1560e73 | 14 | |
el19zf | 13:eb60628db8bf | 15 | /**struct of fsm for menu option*/ |
el19zf | 11:494cc44777fe | 16 | struct State{ |
el19zf | 11:494cc44777fe | 17 | int option; |
el19zf | 11:494cc44777fe | 18 | int next_state[2]; |
el19zf | 11:494cc44777fe | 19 | }; |
el19zf | 11:494cc44777fe | 20 | |
el19zf | 11:494cc44777fe | 21 | class Interface { |
el19zf | 11:494cc44777fe | 22 | |
el19zf | 11:494cc44777fe | 23 | public: |
el19zf | 11:494cc44777fe | 24 | |
el19zf | 13:eb60628db8bf | 25 | /**Constructor*/ |
el19zf | 13:eb60628db8bf | 26 | Interface(); |
el19zf | 13:eb60628db8bf | 27 | |
el19zf | 13:eb60628db8bf | 28 | /**Destructor*/ |
el19zf | 13:eb60628db8bf | 29 | ~Interface(); |
el19zf | 20:a36ab1560e73 | 30 | |
el19zf | 20:a36ab1560e73 | 31 | /** initalises the flag varibales*/ |
el19zf | 11:494cc44777fe | 32 | void init(); |
el19zf | 11:494cc44777fe | 33 | |
el19zf | 13:eb60628db8bf | 34 | /** set a welcome interface for my game*/ |
el19zf | 11:494cc44777fe | 35 | void Welcome(N5110 &lcd,Gamepad &pad); |
el19zf | 11:494cc44777fe | 36 | |
el19zf | 13:eb60628db8bf | 37 | /** set an option menu*/ |
el19zf | 19:5083339b55e8 | 38 | void menu(N5110 &lcd,Gamepad &pad); |
el19zf | 17:ba4d9cd1e347 | 39 | |
el19zf | 17:ba4d9cd1e347 | 40 | /** set an user-defined menu*/ |
el19zf | 19:5083339b55e8 | 41 | void undefined_rate(N5110 &lcd,Gamepad &pad); |
el19zf | 17:ba4d9cd1e347 | 42 | |
el19zf | 17:ba4d9cd1e347 | 43 | /** set an user-defined menu*/ |
el19zf | 19:5083339b55e8 | 44 | void undefined_max(N5110 &lcd,Gamepad &pad); |
el19zf | 11:494cc44777fe | 45 | |
el19zf | 13:eb60628db8bf | 46 | /** if health of people is zero, game over~*/ |
el19zf | 11:494cc44777fe | 47 | void game_over(N5110 &lcd,Gamepad &pad); |
el19zf | 11:494cc44777fe | 48 | |
el19zf | 13:eb60628db8bf | 49 | /** check pause for start botton*/ |
el19zf | 16:cf2bfada3adf | 50 | int check_pause(N5110 &lcd,Gamepad &pad,int paused_flag,float increment,int max); |
el19zf | 11:494cc44777fe | 51 | |
el19zf | 13:eb60628db8bf | 52 | /** count down and draw in lcd*/ |
el19zf | 19:5083339b55e8 | 53 | void count_down(N5110 &lcd); |
el19zf | 11:494cc44777fe | 54 | |
el19zf | 13:eb60628db8bf | 55 | /** Exit interface*/ |
el19zf | 11:494cc44777fe | 56 | void exit(N5110 &lcd,Gamepad &pad); |
el19zf | 11:494cc44777fe | 57 | |
el19zf | 13:eb60628db8bf | 58 | /** Victory interface*/ |
el19zf | 11:494cc44777fe | 59 | void victory(N5110 &lcd,Gamepad &pad); |
el19zf | 12:009895f6b6e4 | 60 | |
el19zf | 20:a36ab1560e73 | 61 | /** simple game interface*/ |
el19zf | 12:009895f6b6e4 | 62 | void simple_game(N5110 &lcd,Gamepad &pad); |
el19zf | 12:009895f6b6e4 | 63 | |
el19zf | 20:a36ab1560e73 | 64 | /**accessors set the count_down flag |
el19zf | 20:a36ab1560e73 | 65 | *@param count_down(int) |
el19zf | 20:a36ab1560e73 | 66 | */ |
el19zf | 19:5083339b55e8 | 67 | void set_count_down(int count_down); |
el19zf | 19:5083339b55e8 | 68 | |
el19zf | 20:a36ab1560e73 | 69 | //mutators--------------------------- |
el19zf | 20:a36ab1560e73 | 70 | |
el19zf | 19:5083339b55e8 | 71 | int get_menu_flag(); |
el19zf | 19:5083339b55e8 | 72 | |
el19zf | 19:5083339b55e8 | 73 | int get_rate_flag(); |
el19zf | 19:5083339b55e8 | 74 | |
el19zf | 19:5083339b55e8 | 75 | int get_max_flag(); |
el19zf | 19:5083339b55e8 | 76 | |
el19zf | 12:009895f6b6e4 | 77 | int get_sim_flag(); |
el19zf | 12:009895f6b6e4 | 78 | |
el19zf | 12:009895f6b6e4 | 79 | int get_gameover_flag(); |
el19zf | 12:009895f6b6e4 | 80 | |
el19zf | 12:009895f6b6e4 | 81 | int get_victory_flag(); |
el19zf | 19:5083339b55e8 | 82 | |
el19zf | 11:494cc44777fe | 83 | private: |
el19zf | 16:cf2bfada3adf | 84 | |
el19zf | 16:cf2bfada3adf | 85 | Sound _sound; |
el19zf | 11:494cc44777fe | 86 | Timer _timer; |
el19zf | 11:494cc44777fe | 87 | Direction _d; |
el19zf | 19:5083339b55e8 | 88 | int _menu_flag; |
el19zf | 19:5083339b55e8 | 89 | int _defined_rate_flag; |
el19zf | 19:5083339b55e8 | 90 | int _defined_max_flag; |
el19zf | 12:009895f6b6e4 | 91 | int _sim_flag; |
el19zf | 12:009895f6b6e4 | 92 | int _gameover_flag; |
el19zf | 19:5083339b55e8 | 93 | int _count_down; |
el19zf | 12:009895f6b6e4 | 94 | int _victory_flag; |
el19zf | 16:cf2bfada3adf | 95 | char _buffer1[14]; |
el19zf | 19:5083339b55e8 | 96 | char _buffer2[14]; |
el19zf | 20:a36ab1560e73 | 97 | |
el19zf | 11:494cc44777fe | 98 | }; |
el19zf | 11:494cc44777fe | 99 | #endif |