test test test
snake-test/ELEC2645_ProjecT/Snake/SnakeEngine.h@0:e4c5e6ec922e, 2020-05-25 (annotated)
- Committer:
- mohamedmoawya
- Date:
- Mon May 25 19:06:11 2020 +0000
- Revision:
- 0:e4c5e6ec922e
snake game tteest
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mohamedmoawya | 0:e4c5e6ec922e | 1 | #include "snake_defines.h" |
mohamedmoawya | 0:e4c5e6ec922e | 2 | #include "N5110.h" |
mohamedmoawya | 0:e4c5e6ec922e | 3 | #include "Gamepad.h" |
mohamedmoawya | 0:e4c5e6ec922e | 4 | |
mohamedmoawya | 0:e4c5e6ec922e | 5 | class SnakeEngine |
mohamedmoawya | 0:e4c5e6ec922e | 6 | { |
mohamedmoawya | 0:e4c5e6ec922e | 7 | |
mohamedmoawya | 0:e4c5e6ec922e | 8 | private: |
mohamedmoawya | 0:e4c5e6ec922e | 9 | //Direction of out snake |
mohamedmoawya | 0:e4c5e6ec922e | 10 | //0 - LEFT, 1 - RIGHT, 2 - DOWN, 3- UP |
mohamedmoawya | 0:e4c5e6ec922e | 11 | int dirSnake; |
mohamedmoawya | 0:e4c5e6ec922e | 12 | int gameScore; |
mohamedmoawya | 0:e4c5e6ec922e | 13 | int gameLife; |
mohamedmoawya | 0:e4c5e6ec922e | 14 | int gameObjectSize; //width of the snake |
mohamedmoawya | 0:e4c5e6ec922e | 15 | unsigned int snakeSize; // initial length of the sanke |
mohamedmoawya | 0:e4c5e6ec922e | 16 | int obstaclesNum ; /********************update*******************/ |
mohamedmoawya | 0:e4c5e6ec922e | 17 | unsigned int level; /********************update*******************/ |
mohamedmoawya | 0:e4c5e6ec922e | 18 | |
mohamedmoawya | 0:e4c5e6ec922e | 19 | gameObject snake[100]; // size of the snake. Lets hope no one can grow the snake more than 100 :D |
mohamedmoawya | 0:e4c5e6ec922e | 20 | |
mohamedmoawya | 0:e4c5e6ec922e | 21 | gameObject obstacles[12] |
mohamedmoawya | 0:e4c5e6ec922e | 22 | ; /********************update*******************/ |
mohamedmoawya | 0:e4c5e6ec922e | 23 | |
mohamedmoawya | 0:e4c5e6ec922e | 24 | gameObject food; |
mohamedmoawya | 0:e4c5e6ec922e | 25 | |
mohamedmoawya | 0:e4c5e6ec922e | 26 | stateGame state; |
mohamedmoawya | 0:e4c5e6ec922e | 27 | |
mohamedmoawya | 0:e4c5e6ec922e | 28 | Gamepad &gamePad; |
mohamedmoawya | 0:e4c5e6ec922e | 29 | N5110 &lcd; |
mohamedmoawya | 0:e4c5e6ec922e | 30 | |
mohamedmoawya | 0:e4c5e6ec922e | 31 | bool bLeft; |
mohamedmoawya | 0:e4c5e6ec922e | 32 | bool bRight; |
mohamedmoawya | 0:e4c5e6ec922e | 33 | bool bDown; |
mohamedmoawya | 0:e4c5e6ec922e | 34 | bool bUp; |
mohamedmoawya | 0:e4c5e6ec922e | 35 | |
mohamedmoawya | 0:e4c5e6ec922e | 36 | int AREA_X; |
mohamedmoawya | 0:e4c5e6ec922e | 37 | int AREA_Y; |
mohamedmoawya | 0:e4c5e6ec922e | 38 | int AREA_X_min; |
mohamedmoawya | 0:e4c5e6ec922e | 39 | int AREA_Y_min; |
mohamedmoawya | 0:e4c5e6ec922e | 40 | int gameSpeed; |
mohamedmoawya | 0:e4c5e6ec922e | 41 | |
mohamedmoawya | 0:e4c5e6ec922e | 42 | void drawSnake(); |
mohamedmoawya | 0:e4c5e6ec922e | 43 | void drawFood(); |
mohamedmoawya | 0:e4c5e6ec922e | 44 | void drawScore(); |
mohamedmoawya | 0:e4c5e6ec922e | 45 | void regenFood(); |
mohamedmoawya | 0:e4c5e6ec922e | 46 | void readUserInput(); |
mohamedmoawya | 0:e4c5e6ec922e | 47 | |
mohamedmoawya | 0:e4c5e6ec922e | 48 | public: |
mohamedmoawya | 0:e4c5e6ec922e | 49 | SnakeEngine(Gamepad &, N5110 &); |
mohamedmoawya | 0:e4c5e6ec922e | 50 | ~SnakeEngine(); |
mohamedmoawya | 0:e4c5e6ec922e | 51 | void drawGameFrame(); |
mohamedmoawya | 0:e4c5e6ec922e | 52 | void isColliding(); |
mohamedmoawya | 0:e4c5e6ec922e | 53 | void setupGame(); |
mohamedmoawya | 0:e4c5e6ec922e | 54 | void handleUserInput(); |
mohamedmoawya | 0:e4c5e6ec922e | 55 | void updateGame(); |
mohamedmoawya | 0:e4c5e6ec922e | 56 | void playGame(); |
mohamedmoawya | 0:e4c5e6ec922e | 57 | void gameIsPaused(); |
mohamedmoawya | 0:e4c5e6ec922e | 58 | void gameIsLost(); |
mohamedmoawya | 0:e4c5e6ec922e | 59 | void init(); |
mohamedmoawya | 0:e4c5e6ec922e | 60 | void runGameEngine(); |
mohamedmoawya | 0:e4c5e6ec922e | 61 | void welcome(); |
mohamedmoawya | 0:e4c5e6ec922e | 62 | int getGameSpeed(); |
mohamedmoawya | 0:e4c5e6ec922e | 63 | void drawObstacles(); /********************update*******************/ |
mohamedmoawya | 0:e4c5e6ec922e | 64 | void obstaclesPosition(); /********************update*******************/ |
mohamedmoawya | 0:e4c5e6ec922e | 65 | }; |