Snake vs Block Game to be run upon K64F.

Dependencies:   mbed

Committer:
AhmedPlaymaker
Date:
Wed Mar 27 18:20:36 2019 +0000
Revision:
9:d1d79d4ee673
Parent:
7:48ba87cd79b5
Child:
10:751bd953fa27
Food Created, now if the snake eats food, it's length will increase.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AhmedPlaymaker 7:48ba87cd79b5 1 #ifndef SNAKEVSBLOCK_H
AhmedPlaymaker 7:48ba87cd79b5 2 #define SNAKEVSBLOCK_H
AhmedPlaymaker 7:48ba87cd79b5 3
AhmedPlaymaker 7:48ba87cd79b5 4 #include "mbed.h"
AhmedPlaymaker 7:48ba87cd79b5 5 #include "N5110.h"
AhmedPlaymaker 7:48ba87cd79b5 6 #include "Gamepad.h"
AhmedPlaymaker 7:48ba87cd79b5 7 #include "Snake.h"
AhmedPlaymaker 9:d1d79d4ee673 8 #include "SnakeFood.h"
AhmedPlaymaker 7:48ba87cd79b5 9
AhmedPlaymaker 7:48ba87cd79b5 10 class SnakevsBlock
AhmedPlaymaker 7:48ba87cd79b5 11 {
AhmedPlaymaker 7:48ba87cd79b5 12 public:
AhmedPlaymaker 7:48ba87cd79b5 13 SnakevsBlock();
AhmedPlaymaker 7:48ba87cd79b5 14 ~SnakevsBlock();
AhmedPlaymaker 7:48ba87cd79b5 15
AhmedPlaymaker 7:48ba87cd79b5 16 /** Initialise Game Machine
AhmedPlaymaker 7:48ba87cd79b5 17 *
AhmedPlaymaker 7:48ba87cd79b5 18 * This function initialises the game machine.
AhmedPlaymaker 7:48ba87cd79b5 19 */
AhmedPlaymaker 7:48ba87cd79b5 20 void init( );
AhmedPlaymaker 7:48ba87cd79b5 21
AhmedPlaymaker 7:48ba87cd79b5 22 /** Read Input
AhmedPlaymaker 7:48ba87cd79b5 23 *
AhmedPlaymaker 7:48ba87cd79b5 24 * This function obtains numeric data from the gamepads joystick.
AhmedPlaymaker 7:48ba87cd79b5 25 */
AhmedPlaymaker 7:48ba87cd79b5 26 void read_input(Gamepad &pad);
AhmedPlaymaker 7:48ba87cd79b5 27
AhmedPlaymaker 7:48ba87cd79b5 28 /** Update
AhmedPlaymaker 7:48ba87cd79b5 29 *
AhmedPlaymaker 7:48ba87cd79b5 30 * This function contains the update functions of the other libraries used in the game.
AhmedPlaymaker 7:48ba87cd79b5 31 */
AhmedPlaymaker 7:48ba87cd79b5 32 void update(Gamepad &pad);
AhmedPlaymaker 7:48ba87cd79b5 33
AhmedPlaymaker 7:48ba87cd79b5 34 /** Draw
AhmedPlaymaker 7:48ba87cd79b5 35 *
AhmedPlaymaker 7:48ba87cd79b5 36 * This function contains the draw functions of the other libraries used in the game.
AhmedPlaymaker 7:48ba87cd79b5 37 */
AhmedPlaymaker 7:48ba87cd79b5 38 void draw(N5110 &lcd, Gamepad &pad);
AhmedPlaymaker 7:48ba87cd79b5 39
AhmedPlaymaker 7:48ba87cd79b5 40 /** Get Position
AhmedPlaymaker 7:48ba87cd79b5 41 *
AhmedPlaymaker 7:48ba87cd79b5 42 * This function contains the Get Position functions of the otehr libraries used in the game.
AhmedPlaymaker 7:48ba87cd79b5 43 */
AhmedPlaymaker 7:48ba87cd79b5 44 void get_pos();
AhmedPlaymaker 7:48ba87cd79b5 45
AhmedPlaymaker 7:48ba87cd79b5 46
AhmedPlaymaker 7:48ba87cd79b5 47 int snakex;
AhmedPlaymaker 7:48ba87cd79b5 48 int snakey;
AhmedPlaymaker 7:48ba87cd79b5 49 int length;
AhmedPlaymaker 9:d1d79d4ee673 50 int foodbuff; //this makes food 1,2,and 3 come at seperate times
AhmedPlaymaker 7:48ba87cd79b5 51
AhmedPlaymaker 7:48ba87cd79b5 52 private:
AhmedPlaymaker 7:48ba87cd79b5 53
AhmedPlaymaker 7:48ba87cd79b5 54 Snake _s;
AhmedPlaymaker 9:d1d79d4ee673 55 SnakeFood _f;
AhmedPlaymaker 9:d1d79d4ee673 56 SnakeFood _ff;
AhmedPlaymaker 9:d1d79d4ee673 57 SnakeFood _fff;
AhmedPlaymaker 7:48ba87cd79b5 58 int _speed;
AhmedPlaymaker 7:48ba87cd79b5 59 Direction _d;
AhmedPlaymaker 7:48ba87cd79b5 60 float _mag;
AhmedPlaymaker 7:48ba87cd79b5 61 int n;
AhmedPlaymaker 7:48ba87cd79b5 62
AhmedPlaymaker 9:d1d79d4ee673 63 /** Check for Snake and Food collision
AhmedPlaymaker 9:d1d79d4ee673 64 *
AhmedPlaymaker 9:d1d79d4ee673 65 * This function checks if the Snake has come into contact with it's food.
AhmedPlaymaker 9:d1d79d4ee673 66 */
AhmedPlaymaker 9:d1d79d4ee673 67 void CheckSnakeFoodCollision(Gamepad &pad);
AhmedPlaymaker 9:d1d79d4ee673 68
AhmedPlaymaker 7:48ba87cd79b5 69 };
AhmedPlaymaker 7:48ba87cd79b5 70 #endif