ZIYI CHEN ml17z4c 201214999

Dependencies:   mbed

Committer:
ziyi11
Date:
Wed May 08 20:48:33 2019 +0000
Revision:
9:a8b2086a46e5
Child:
11:1812f04382fa
try1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ziyi11 9:a8b2086a46e5 1 #include "mbed.h"
ziyi11 9:a8b2086a46e5 2 #include "N5110.h"
ziyi11 9:a8b2086a46e5 3 #include "Gamepad.h"
ziyi11 9:a8b2086a46e5 4 #include "Game.h"
ziyi11 9:a8b2086a46e5 5 #include "Food.h"
ziyi11 9:a8b2086a46e5 6
ziyi11 9:a8b2086a46e5 7
ziyi11 9:a8b2086a46e5 8 /** The Game class
ziyi11 9:a8b2086a46e5 9 * @brief Handles all failure states and game drawing
ziyi11 9:a8b2086a46e5 10 * @author ZIYI CHEN
ziyi11 9:a8b2086a46e5 11 * @date may 2019
ziyi11 9:a8b2086a46e5 12 */
ziyi11 9:a8b2086a46e5 13 class Eng
ziyi11 9:a8b2086a46e5 14 {
ziyi11 9:a8b2086a46e5 15
ziyi11 9:a8b2086a46e5 16 public:
ziyi11 9:a8b2086a46e5 17
ziyi11 9:a8b2086a46e5 18 /**Constructor*/
ziyi11 9:a8b2086a46e5 19 Eng();
ziyi11 9:a8b2086a46e5 20
ziyi11 9:a8b2086a46e5 21 /**Destructor*/
ziyi11 9:a8b2086a46e5 22 ~Eng();
ziyi11 9:a8b2086a46e5 23
ziyi11 9:a8b2086a46e5 24 /** The init function */
ziyi11 9:a8b2086a46e5 25 void init();
ziyi11 9:a8b2086a46e5 26
ziyi11 9:a8b2086a46e5 27 /**load map function
ziyi11 9:a8b2086a46e5 28 *@param drow map on lcd
ziyi11 9:a8b2086a46e5 29 */
ziyi11 9:a8b2086a46e5 30 void loadMap();
ziyi11 9:a8b2086a46e5 31
ziyi11 9:a8b2086a46e5 32 /**get userinput function
ziyi11 9:a8b2086a46e5 33 *@@param userinput by gamepad's function.
ziyi11 9:a8b2086a46e5 34 */
ziyi11 9:a8b2086a46e5 35 void userinput(Gamepad &pad);
ziyi11 9:a8b2086a46e5 36
ziyi11 9:a8b2086a46e5 37 /**draw the game picture
ziyi11 9:a8b2086a46e5 38 *@@param use LCD to draw
ziyi11 9:a8b2086a46e5 39 */
ziyi11 9:a8b2086a46e5 40 void draw(N5110 &lcd);
ziyi11 9:a8b2086a46e5 41
ziyi11 9:a8b2086a46e5 42 /**draw the game over picture
ziyi11 9:a8b2086a46e5 43 *@@param give score and wait 5 seconds to play again
ziyi11 9:a8b2086a46e5 44 */
ziyi11 9:a8b2086a46e5 45 void score(N5110 &lcd);
ziyi11 9:a8b2086a46e5 46 /** Updates game state
ziyi11 9:a8b2086a46e5 47 * @param check and update the game state
ziyi11 9:a8b2086a46e5 48 */
ziyi11 9:a8b2086a46e5 49 void update(Gamepad &pad);
ziyi11 9:a8b2086a46e5 50
ziyi11 9:a8b2086a46e5 51
ziyi11 9:a8b2086a46e5 52
ziyi11 9:a8b2086a46e5 53
ziyi11 9:a8b2086a46e5 54
ziyi11 9:a8b2086a46e5 55 /** Gets score
ziyi11 9:a8b2086a46e5 56 * @return score
ziyi11 9:a8b2086a46e5 57 */
ziyi11 9:a8b2086a46e5 58
ziyi11 9:a8b2086a46e5 59 float getScore();
ziyi11 9:a8b2086a46e5 60
ziyi11 9:a8b2086a46e5 61 /** Gets gameover
ziyi11 9:a8b2086a46e5 62 * @return ifgameOver
ziyi11 9:a8b2086a46e5 63 */
ziyi11 9:a8b2086a46e5 64 bool getGameOver();
ziyi11 9:a8b2086a46e5 65
ziyi11 9:a8b2086a46e5 66
ziyi11 9:a8b2086a46e5 67
ziyi11 9:a8b2086a46e5 68
ziyi11 9:a8b2086a46e5 69 /** Gets checkFood
ziyi11 9:a8b2086a46e5 70 * @return value of checkFood
ziyi11 9:a8b2086a46e5 71 */
ziyi11 9:a8b2086a46e5 72 bool checkFood();
ziyi11 9:a8b2086a46e5 73 /** extand the snake function
ziyi11 9:a8b2086a46e5 74 * @return snake grow
ziyi11 9:a8b2086a46e5 75 */
ziyi11 9:a8b2086a46e5 76 void growSnake();
ziyi11 9:a8b2086a46e5 77 /** check weather the snake dead
ziyi11 9:a8b2086a46e5 78 * @return snake dead game end
ziyi11 9:a8b2086a46e5 79 */
ziyi11 9:a8b2086a46e5 80 void dead();
ziyi11 9:a8b2086a46e5 81
ziyi11 9:a8b2086a46e5 82 /** Gets _gameOver
ziyi11 9:a8b2086a46e5 83 * @return value of _gameOver
ziyi11 9:a8b2086a46e5 84 */
ziyi11 9:a8b2086a46e5 85 bool _gameOver;
ziyi11 9:a8b2086a46e5 86
ziyi11 9:a8b2086a46e5 87 /**some variables used to save score direction, map, food and others*/
ziyi11 9:a8b2086a46e5 88 int _score;
ziyi11 9:a8b2086a46e5 89 Direction _d;
ziyi11 9:a8b2086a46e5 90 int snake1[84][48];
ziyi11 9:a8b2086a46e5 91 Game dSnake;
ziyi11 9:a8b2086a46e5 92 Food _noodles;
ziyi11 9:a8b2086a46e5 93
ziyi11 9:a8b2086a46e5 94 };