ELEC2645 (2019/20) / Mbed 2 deprecated ELEC2645_Project_ll17lrc_v2

Dependencies:   mbed

Committer:
ll17lrc
Date:
Sun May 17 15:55:47 2020 +0000
Revision:
4:a9d5fca3b7ba
Parent:
3:4494e6928194
Child:
7:35465b3bf586
*Compiles*

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ll17lrc 2:823dea76ff2e 1 #ifndef IMPOSSENGINE_H
ll17lrc 2:823dea76ff2e 2 #define IMPOSSENGINE_H
ll17lrc 2:823dea76ff2e 3
ll17lrc 2:823dea76ff2e 4 #include "mbed.h"
ll17lrc 2:823dea76ff2e 5 #include "N5110.h"
ll17lrc 2:823dea76ff2e 6 #include "Gamepad.h"
ll17lrc 2:823dea76ff2e 7 #include "Ball.h"
ll17lrc 2:823dea76ff2e 8 #include "StartMenu.h"
ll17lrc 2:823dea76ff2e 9 #include "Zero.h"
ll17lrc 2:823dea76ff2e 10 #include "One.h"
ll17lrc 2:823dea76ff2e 11
ll17lrc 2:823dea76ff2e 12 // gap from edge of screen
ll17lrc 2:823dea76ff2e 13
ll17lrc 2:823dea76ff2e 14 class ImpossEngine
ll17lrc 2:823dea76ff2e 15 {
ll17lrc 2:823dea76ff2e 16
ll17lrc 2:823dea76ff2e 17 public:
ll17lrc 2:823dea76ff2e 18 ImpossEngine();
ll17lrc 2:823dea76ff2e 19 ~ImpossEngine();
ll17lrc 2:823dea76ff2e 20
ll17lrc 2:823dea76ff2e 21 void read_input(Gamepad &pad);
ll17lrc 4:a9d5fca3b7ba 22 void update(Gamepad &pad,N5110 &lcd, int level);
ll17lrc 2:823dea76ff2e 23 void draw(N5110 &lcd);
ll17lrc 4:a9d5fca3b7ba 24 void complete(Gamepad &pad,N5110 &lcd);
ll17lrc 4:a9d5fca3b7ba 25 void set_level_zero();
ll17lrc 4:a9d5fca3b7ba 26 void set_level_one();
ll17lrc 2:823dea76ff2e 27
ll17lrc 2:823dea76ff2e 28 private:
ll17lrc 2:823dea76ff2e 29
ll17lrc 4:a9d5fca3b7ba 30 void check_collision(Gamepad &pad, N5110 &lcd);
ll17lrc 4:a9d5fca3b7ba 31 void check_finish(int level);
ll17lrc 2:823dea76ff2e 32
ll17lrc 2:823dea76ff2e 33 Ball _ball;
ll17lrc 3:4494e6928194 34 One _one;
ll17lrc 3:4494e6928194 35 Zero _zero;
ll17lrc 4:a9d5fca3b7ba 36
ll17lrc 4:a9d5fca3b7ba 37 int level;
ll17lrc 4:a9d5fca3b7ba 38 int x_pos;
ll17lrc 4:a9d5fca3b7ba 39 int y_pos;
ll17lrc 2:823dea76ff2e 40
ll17lrc 2:823dea76ff2e 41 Direction _d;
ll17lrc 2:823dea76ff2e 42 float _mag;
ll17lrc 2:823dea76ff2e 43
ll17lrc 2:823dea76ff2e 44 };
ll17lrc 2:823dea76ff2e 45
ll17lrc 2:823dea76ff2e 46 #endif