ELEC2645 (2018/19) / Mbed 2 deprecated ll16o2l_ELEC2645

Dependencies:   mbed Gamepad

Committer:
ll16o2l
Date:
Thu Apr 25 18:49:50 2019 +0000
Revision:
8:c3153fd4d8ce
Parent:
7:67c00839f188
Child:
15:807eba7c7811
Neaten code and implemented heath pack to the game.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ll16o2l 2:888634fff8ff 1 #ifndef DODGENGINE_H
ll16o2l 2:888634fff8ff 2 #define DODGEENGINE_H
ll16o2l 2:888634fff8ff 3
ll16o2l 2:888634fff8ff 4 #include "mbed.h"
ll16o2l 2:888634fff8ff 5 #include "N5110.h"
ll16o2l 2:888634fff8ff 6 #include "Gamepad.h"
ll16o2l 2:888634fff8ff 7 #include "Objects.h"
ll16o2l 2:888634fff8ff 8 #include "Player.h"
ll16o2l 3:aa82968b7a8e 9 #include "Health_Kit.h"
ll16o2l 2:888634fff8ff 10
ll16o2l 7:67c00839f188 11 /** DodgeEngine Class
ll16o2l 3:aa82968b7a8e 12 * @author Oliver Luong, University of Leeds
ll16o2l 3:aa82968b7a8e 13 * @brief Controls the functionality of the Dodge game
ll16o2l 3:aa82968b7a8e 14 * @date 22/04/2019
ll16o2l 3:aa82968b7a8e 15 */
ll16o2l 2:888634fff8ff 16
ll16o2l 2:888634fff8ff 17 class DodgeEngine
ll16o2l 2:888634fff8ff 18 {
ll16o2l 2:888634fff8ff 19
ll16o2l 2:888634fff8ff 20 public:
ll16o2l 2:888634fff8ff 21 DodgeEngine();
ll16o2l 2:888634fff8ff 22 ~DodgeEngine();
ll16o2l 6:98ddf5eade49 23
ll16o2l 3:aa82968b7a8e 24 void init(int player_width,int player_height,int objetcs_size,int speed,int lives, int kit_size);
ll16o2l 2:888634fff8ff 25 void read_input(Gamepad &pad);
ll16o2l 6:98ddf5eade49 26
ll16o2l 2:888634fff8ff 27 void update(Gamepad &pad);
ll16o2l 2:888634fff8ff 28 void draw(N5110 &lcd);
ll16o2l 3:aa82968b7a8e 29 void time(float time);
ll16o2l 2:888634fff8ff 30 int get_lose();
ll16o2l 2:888634fff8ff 31
ll16o2l 2:888634fff8ff 32 private:
ll16o2l 2:888634fff8ff 33
ll16o2l 3:aa82968b7a8e 34 void check_wall_collision1(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 35 void check_wall_collision2(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 36 void check_wall_collision3(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 37 void check_wall_collision4(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 38 void check_player_collisions1(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 39 void check_player_collisions2(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 40 void check_player_collisions3(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 41 void check_player_collisions4(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 42 void check_player_health_kit_collison(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 43 void life_up(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 44 void life_leds(Gamepad &pad);
ll16o2l 2:888634fff8ff 45
ll16o2l 3:aa82968b7a8e 46 void player_hit(Gamepad &pad);
ll16o2l 3:aa82968b7a8e 47 void print_lives_time(N5110 &lcd);
ll16o2l 3:aa82968b7a8e 48
ll16o2l 2:888634fff8ff 49 Player _player;
ll16o2l 2:888634fff8ff 50
ll16o2l 2:888634fff8ff 51 int _player_width;
ll16o2l 2:888634fff8ff 52 int _player_height;
ll16o2l 2:888634fff8ff 53 int _objects_size;
ll16o2l 2:888634fff8ff 54 int _speed;
ll16o2l 2:888634fff8ff 55 int lose;
ll16o2l 3:aa82968b7a8e 56 int _lives;
ll16o2l 3:aa82968b7a8e 57
ll16o2l 3:aa82968b7a8e 58 int l; //counter for loop
ll16o2l 3:aa82968b7a8e 59 int n; //counter for loop
ll16o2l 3:aa82968b7a8e 60 int m; //counter for loop
ll16o2l 2:888634fff8ff 61
ll16o2l 3:aa82968b7a8e 62 float _time;
ll16o2l 3:aa82968b7a8e 63
ll16o2l 3:aa82968b7a8e 64 Objects _objects1;
ll16o2l 3:aa82968b7a8e 65 Objects _objects2;
ll16o2l 3:aa82968b7a8e 66 Objects _objects3;
ll16o2l 3:aa82968b7a8e 67 Objects _objects4;
ll16o2l 2:888634fff8ff 68
ll16o2l 2:888634fff8ff 69 Direction _d;
ll16o2l 2:888634fff8ff 70 float _mag;
ll16o2l 3:aa82968b7a8e 71
ll16o2l 3:aa82968b7a8e 72 Health_Kit _health_kit;
ll16o2l 3:aa82968b7a8e 73 int _kit_size;
ll16o2l 3:aa82968b7a8e 74 bool collect;
ll16o2l 3:aa82968b7a8e 75 bool used;
ll16o2l 2:888634fff8ff 76 };
ll16o2l 2:888634fff8ff 77
ll16o2l 2:888634fff8ff 78 #endif