Zeyu Feng 201377605
Dependencies: mbed
On Minerva
Interface/Interface.h@16:cf2bfada3adf, 2020-05-18 (annotated)
- Committer:
- el19zf
- Date:
- Mon May 18 08:56:17 2020 +0000
- Revision:
- 16:cf2bfada3adf
- Parent:
- 14:42b8a91e463c
- Child:
- 17:ba4d9cd1e347
update the paused interface
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 | 13:eb60628db8bf | 14 | /**struct of fsm for menu option*/ |
el19zf | 11:494cc44777fe | 15 | struct State{ |
el19zf | 11:494cc44777fe | 16 | int option; |
el19zf | 11:494cc44777fe | 17 | int next_state[2]; |
el19zf | 11:494cc44777fe | 18 | }; |
el19zf | 11:494cc44777fe | 19 | |
el19zf | 11:494cc44777fe | 20 | class Interface { |
el19zf | 11:494cc44777fe | 21 | |
el19zf | 11:494cc44777fe | 22 | public: |
el19zf | 11:494cc44777fe | 23 | |
el19zf | 13:eb60628db8bf | 24 | /**Constructor*/ |
el19zf | 13:eb60628db8bf | 25 | Interface(); |
el19zf | 13:eb60628db8bf | 26 | |
el19zf | 13:eb60628db8bf | 27 | /**Destructor*/ |
el19zf | 13:eb60628db8bf | 28 | ~Interface(); |
el19zf | 11:494cc44777fe | 29 | |
el19zf | 11:494cc44777fe | 30 | void init(); |
el19zf | 11:494cc44777fe | 31 | |
el19zf | 13:eb60628db8bf | 32 | /** set a welcome interface for my game*/ |
el19zf | 11:494cc44777fe | 33 | void Welcome(N5110 &lcd,Gamepad &pad); |
el19zf | 11:494cc44777fe | 34 | |
el19zf | 13:eb60628db8bf | 35 | /** set an option menu*/ |
el19zf | 11:494cc44777fe | 36 | int menu(N5110 &lcd,Gamepad &pad,int option_flag); |
el19zf | 11:494cc44777fe | 37 | |
el19zf | 13:eb60628db8bf | 38 | /** if health of people is zero, game over~*/ |
el19zf | 11:494cc44777fe | 39 | void game_over(N5110 &lcd,Gamepad &pad); |
el19zf | 11:494cc44777fe | 40 | |
el19zf | 13:eb60628db8bf | 41 | /** check pause for start botton*/ |
el19zf | 16:cf2bfada3adf | 42 | int check_pause(N5110 &lcd,Gamepad &pad,int paused_flag,float increment,int max); |
el19zf | 11:494cc44777fe | 43 | |
el19zf | 13:eb60628db8bf | 44 | /** count down and draw in lcd*/ |
el19zf | 11:494cc44777fe | 45 | int count_down(N5110 &lcd,int count_flag); |
el19zf | 11:494cc44777fe | 46 | |
el19zf | 13:eb60628db8bf | 47 | /** Exit interface*/ |
el19zf | 11:494cc44777fe | 48 | void exit(N5110 &lcd,Gamepad &pad); |
el19zf | 11:494cc44777fe | 49 | |
el19zf | 13:eb60628db8bf | 50 | /** Victory interface*/ |
el19zf | 11:494cc44777fe | 51 | void victory(N5110 &lcd,Gamepad &pad); |
el19zf | 12:009895f6b6e4 | 52 | |
el19zf | 13:eb60628db8bf | 53 | /** make the game simple*/ |
el19zf | 12:009895f6b6e4 | 54 | void simple_game(N5110 &lcd,Gamepad &pad); |
el19zf | 12:009895f6b6e4 | 55 | |
el19zf | 12:009895f6b6e4 | 56 | int get_sim_flag(); |
el19zf | 12:009895f6b6e4 | 57 | |
el19zf | 12:009895f6b6e4 | 58 | int get_gameover_flag(); |
el19zf | 12:009895f6b6e4 | 59 | |
el19zf | 12:009895f6b6e4 | 60 | int get_victory_flag(); |
el19zf | 11:494cc44777fe | 61 | |
el19zf | 11:494cc44777fe | 62 | private: |
el19zf | 16:cf2bfada3adf | 63 | |
el19zf | 16:cf2bfada3adf | 64 | Sound _sound; |
el19zf | 11:494cc44777fe | 65 | Timer _timer; |
el19zf | 11:494cc44777fe | 66 | Direction _d; |
el19zf | 12:009895f6b6e4 | 67 | int _sim_flag; |
el19zf | 12:009895f6b6e4 | 68 | int _gameover_flag; |
el19zf | 12:009895f6b6e4 | 69 | int _victory_flag; |
el19zf | 16:cf2bfada3adf | 70 | char _buffer1[14]; |
el19zf | 16:cf2bfada3adf | 71 | char _buffer2[14]; |
el19zf | 11:494cc44777fe | 72 | |
el19zf | 11:494cc44777fe | 73 | }; |
el19zf | 11:494cc44777fe | 74 | #endif |