ELEC2645 (2019/20) / Mbed 2 deprecated ELEC2645_Project_ll17lrc_v2

Dependencies:   mbed

Committer:
ll17lrc
Date:
Mon May 25 16:40:59 2020 +0000
Revision:
11:7a4abe731f9c
Parent:
10:df6a496270be
Child:
13:fd290d2fd917
Removed level select.; Added level 6

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 8:10eb578dd754 11 #include "Two.h"
ll17lrc 9:e2dd152867d1 12 #include "Three.h"
ll17lrc 9:e2dd152867d1 13 #include "Four.h"
ll17lrc 11:7a4abe731f9c 14 #include "Five.h"
ll17lrc 2:823dea76ff2e 15
ll17lrc 10:df6a496270be 16
ll17lrc 2:823dea76ff2e 17 // gap from edge of screen
ll17lrc 2:823dea76ff2e 18
ll17lrc 2:823dea76ff2e 19 class ImpossEngine
ll17lrc 2:823dea76ff2e 20 {
ll17lrc 2:823dea76ff2e 21
ll17lrc 2:823dea76ff2e 22 public:
ll17lrc 2:823dea76ff2e 23 ImpossEngine();
ll17lrc 2:823dea76ff2e 24 ~ImpossEngine();
ll17lrc 2:823dea76ff2e 25
ll17lrc 2:823dea76ff2e 26 void read_input(Gamepad &pad);
ll17lrc 7:35465b3bf586 27 void update(Gamepad &pad,N5110 &lcd);
ll17lrc 8:10eb578dd754 28 void draw(N5110 &lcd,Gamepad &pad);
ll17lrc 4:a9d5fca3b7ba 29 void complete(Gamepad &pad,N5110 &lcd);
ll17lrc 4:a9d5fca3b7ba 30 void set_level_zero();
ll17lrc 4:a9d5fca3b7ba 31 void set_level_one();
ll17lrc 10:df6a496270be 32 void set_level_two();
ll17lrc 10:df6a496270be 33 void set_level_three();
ll17lrc 10:df6a496270be 34 void set_level_four();
ll17lrc 10:df6a496270be 35 int level;
ll17lrc 2:823dea76ff2e 36
ll17lrc 2:823dea76ff2e 37 private:
ll17lrc 2:823dea76ff2e 38
ll17lrc 4:a9d5fca3b7ba 39 void check_collision(Gamepad &pad, N5110 &lcd);
ll17lrc 9:e2dd152867d1 40 void check_finish(Gamepad &pad);
ll17lrc 2:823dea76ff2e 41
ll17lrc 2:823dea76ff2e 42 Ball _ball;
ll17lrc 3:4494e6928194 43 One _one;
ll17lrc 3:4494e6928194 44 Zero _zero;
ll17lrc 8:10eb578dd754 45 Two _two;
ll17lrc 9:e2dd152867d1 46 Three _three;
ll17lrc 9:e2dd152867d1 47 Four _four;
ll17lrc 11:7a4abe731f9c 48 Five _five;
ll17lrc 4:a9d5fca3b7ba 49
ll17lrc 4:a9d5fca3b7ba 50 int x_pos;
ll17lrc 4:a9d5fca3b7ba 51 int y_pos;
ll17lrc 7:35465b3bf586 52 int x;
ll17lrc 7:35465b3bf586 53 int y;
ll17lrc 7:35465b3bf586 54 int pos;
ll17lrc 2:823dea76ff2e 55
ll17lrc 2:823dea76ff2e 56 Direction _d;
ll17lrc 2:823dea76ff2e 57 float _mag;
ll17lrc 2:823dea76ff2e 58
ll17lrc 2:823dea76ff2e 59 };
ll17lrc 2:823dea76ff2e 60
ll17lrc 2:823dea76ff2e 61 #endif