ELEC2645 (2018/19) / Mbed 2 deprecated el17aio

Dependencies:   mbed

Committer:
ikenna1
Date:
Fri Apr 19 02:40:08 2019 +0000
Revision:
29:4c7b16b5b6df
Parent:
28:6319e928f0aa
Child:
30:711d722f3cef
fixed alarm issue

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ikenna1 2:66a4e5d7a7cd 1 #ifndef ROSENENGINE_H
ikenna1 2:66a4e5d7a7cd 2 #define ROSENENGINE_H
ikenna1 2:66a4e5d7a7cd 3
ikenna1 2:66a4e5d7a7cd 4 #include "mbed.h"
ikenna1 2:66a4e5d7a7cd 5 #include "N5110.h"
ikenna1 2:66a4e5d7a7cd 6 #include "Gamepad.h"
ikenna1 7:ed5870cfb3e0 7 #include "Ship.h"
ikenna1 9:241a1a7d8527 8 #include "Weapons.h"
ikenna1 9:241a1a7d8527 9 #include "Menu.h"
ikenna1 15:009ccc07bb57 10 #include "Enemy.h"
ikenna1 17:e65a9f981834 11 #include "Health.h"
ikenna1 2:66a4e5d7a7cd 12
ikenna1 2:66a4e5d7a7cd 13 class RosenEngine
ikenna1 2:66a4e5d7a7cd 14 {
ikenna1 2:66a4e5d7a7cd 15
ikenna1 2:66a4e5d7a7cd 16 public:
ikenna1 2:66a4e5d7a7cd 17 RosenEngine();
ikenna1 2:66a4e5d7a7cd 18 ~RosenEngine();
ikenna1 3:f9cd1a38d5c6 19
ikenna1 8:87a845b8575e 20 void init(int ship_width,int ship_height,int ship_speed,int ship_xpos,int ship_ypos);
ikenna1 27:f99249e727fd 21 void reset();
ikenna1 2:66a4e5d7a7cd 22 void read_input(Gamepad &pad);
ikenna1 2:66a4e5d7a7cd 23 void update(Gamepad &pad);
ikenna1 14:88ca5b1a111a 24 void draw(N5110 &lcd, Gamepad &pad);
ikenna1 9:241a1a7d8527 25 void get_pos();
ikenna1 10:c33d7593a275 26 void title(N5110 &lcd);
ikenna1 13:e114d362186d 27 int get_ycursor();
ikenna1 21:628fb703188f 28 int get_shipno();
ikenna1 12:47578eb9ea73 29 void ship_select(N5110 &lcd);
ikenna1 29:4c7b16b5b6df 30 void score();
ikenna1 9:241a1a7d8527 31
ikenna1 9:241a1a7d8527 32 int ship_xpos;
ikenna1 9:241a1a7d8527 33 int ship_ypos;
ikenna1 9:241a1a7d8527 34 int ship_width;
ikenna1 25:faba9eb44514 35 int ship_height;
ikenna1 25:faba9eb44514 36 //*** note: add ship width and ship heirgth in place of 6 and 9 to generalize arrays after they are finished
ikenna1 10:c33d7593a275 37
ikenna1 2:66a4e5d7a7cd 38 private:
ikenna1 26:a53d41adf40b 39 bool ship_projectile_collision();
ikenna1 26:a53d41adf40b 40 bool enemy_ship_collision();
ikenna1 26:a53d41adf40b 41 bool enemy_projectile_collision();
ikenna1 4:740e14ebbc97 42
ikenna1 4:740e14ebbc97 43 // Variables
ikenna1 8:87a845b8575e 44 Ship _ship;
ikenna1 9:241a1a7d8527 45 Weapons _weapons;
ikenna1 9:241a1a7d8527 46 Menu _menu;
ikenna1 15:009ccc07bb57 47 Enemy _enemy;
ikenna1 17:e65a9f981834 48 Health _health;
ikenna1 4:740e14ebbc97 49 float _xjoystick;
ikenna1 4:740e14ebbc97 50 float _yjoystick;
ikenna1 9:241a1a7d8527 51 Direction _d;
ikenna1 10:c33d7593a275 52 int _ycursor;
ikenna1 21:628fb703188f 53 int _shipno;
ikenna1 25:faba9eb44514 54
ikenna1 2:66a4e5d7a7cd 55
ikenna1 2:66a4e5d7a7cd 56 };
ikenna1 25:faba9eb44514 57 /************STUFF TO FIX******************************
ikenna1 28:6319e928f0aa 58 **** add sound effects for sjield braking
ikenna1 28:6319e928f0aa 59 **** add passive shield regeneration
ikenna1 29:4c7b16b5b6df 60 **** work on score increase
ikenna1 29:4c7b16b5b6df 61 **** add title screen with name
ikenna1 29:4c7b16b5b6df 62 **** make it so title ship switches deopending on ship being used
ikenna1 29:4c7b16b5b6df 63 **** make it so back asks you if you are sure and ststes that you will lose all progress
ikenna1 29:4c7b16b5b6df 64 **** think of level system
ikenna1 29:4c7b16b5b6df 65 **** orion should send out pulses that stun enemy ships and absorb thier shields(use draw line)
ikenna1 29:4c7b16b5b6df 66 **** scale shields properly
ikenna1 29:4c7b16b5b6df 67 **** fix the border issue(i.e the ships clip through healthbar)
ikenna1 28:6319e928f0aa 68
ikenna1 25:faba9eb44514 69 */
ikenna1 2:66a4e5d7a7cd 70 #endif