Class used to run the maze game loop.

Committer:
el15mh
Date:
Fri Apr 07 10:29:16 2017 +0000
Revision:
0:afee1085c5ef
Child:
1:5a44ce88c5e2
whole program basic with menu interface

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el15mh 0:afee1085c5ef 1 //
el15mh 0:afee1085c5ef 2 // MazeEngine.h
el15mh 0:afee1085c5ef 3 //
el15mh 0:afee1085c5ef 4 //
el15mh 0:afee1085c5ef 5 // Created by Max Houghton on 19/03/2017.
el15mh 0:afee1085c5ef 6 //
el15mh 0:afee1085c5ef 7 //
el15mh 0:afee1085c5ef 8
el15mh 0:afee1085c5ef 9 #ifndef MAZEENGINE_H
el15mh 0:afee1085c5ef 10 #define MAZEENGINE_H
el15mh 0:afee1085c5ef 11
el15mh 0:afee1085c5ef 12 #include "mbed.h"
el15mh 0:afee1085c5ef 13 #include "N5110.h"
el15mh 0:afee1085c5ef 14 #include "Gamepad.h"
el15mh 0:afee1085c5ef 15 #include "FXOS8700CQ.h"
el15mh 0:afee1085c5ef 16 #include "Ball.h"
el15mh 0:afee1085c5ef 17 #include "Maze.h"
el15mh 0:afee1085c5ef 18
el15mh 0:afee1085c5ef 19 class MazeEngine
el15mh 0:afee1085c5ef 20 {
el15mh 0:afee1085c5ef 21
el15mh 0:afee1085c5ef 22 public:
el15mh 0:afee1085c5ef 23
el15mh 0:afee1085c5ef 24 MazeEngine();
el15mh 0:afee1085c5ef 25 ~MazeEngine();
el15mh 0:afee1085c5ef 26
el15mh 0:afee1085c5ef 27 void init(int mazeIndex, int x, int y, int radius);
el15mh 0:afee1085c5ef 28 void readInput(Gamepad &pad, FXOS8700CQ &device);
el15mh 0:afee1085c5ef 29 void update(Gamepad &pad, N5110 &lcd);
el15mh 0:afee1085c5ef 30 void draw(N5110 &lcd);
el15mh 0:afee1085c5ef 31
el15mh 0:afee1085c5ef 32 private:
el15mh 0:afee1085c5ef 33
el15mh 0:afee1085c5ef 34 Maze _maze;
el15mh 0:afee1085c5ef 35 Ball _ball;
el15mh 0:afee1085c5ef 36
el15mh 0:afee1085c5ef 37 int _mazeIndex;
el15mh 0:afee1085c5ef 38 int _x;
el15mh 0:afee1085c5ef 39 int _y;
el15mh 0:afee1085c5ef 40 int _radius;
el15mh 0:afee1085c5ef 41
el15mh 0:afee1085c5ef 42 Direction _direction;
el15mh 0:afee1085c5ef 43 float _magnitude;
el15mh 0:afee1085c5ef 44
el15mh 0:afee1085c5ef 45 };
el15mh 0:afee1085c5ef 46
el15mh 0:afee1085c5ef 47 #endif