ELEC2645 (2018/19) / Mbed 2 deprecated el17aio

Dependencies:   mbed

Committer:
ikenna1
Date:
Tue Apr 09 05:14:07 2019 +0000
Revision:
9:241a1a7d8527
Parent:
8:87a845b8575e
Child:
10:c33d7593a275
Had to work on this in another folder as this one got corrupted for some reason but it works once the name is changed so will work on it with name changed. New features include Menu class and Weapons class

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ikenna1 3:f9cd1a38d5c6 1 #include "RosenEngine.h"
ikenna1 3:f9cd1a38d5c6 2
ikenna1 8:87a845b8575e 3
ikenna1 2:66a4e5d7a7cd 4 // Constructor
ikenna1 2:66a4e5d7a7cd 5 RosenEngine::RosenEngine()
ikenna1 2:66a4e5d7a7cd 6 {
ikenna1 2:66a4e5d7a7cd 7
ikenna1 2:66a4e5d7a7cd 8 }
ikenna1 2:66a4e5d7a7cd 9 // Destructor
ikenna1 2:66a4e5d7a7cd 10 RosenEngine::~RosenEngine()
ikenna1 2:66a4e5d7a7cd 11 {
ikenna1 2:66a4e5d7a7cd 12
ikenna1 2:66a4e5d7a7cd 13 }
ikenna1 3:f9cd1a38d5c6 14
ikenna1 4:740e14ebbc97 15
ikenna1 9:241a1a7d8527 16 void RosenEngine::init(int ship_width,int ship_height,int ship_speed,int ship_xpos,int ship_ypos)
ikenna1 2:66a4e5d7a7cd 17 {
ikenna1 4:740e14ebbc97 18 // initialise the game parameters
ikenna1 9:241a1a7d8527 19 _ship.init(ship_width,ship_height,ship_speed,ship_xpos,ship_ypos);
ikenna1 9:241a1a7d8527 20 _menu.init(16);
ikenna1 9:241a1a7d8527 21
ikenna1 4:740e14ebbc97 22
ikenna1 3:f9cd1a38d5c6 23 }
ikenna1 4:740e14ebbc97 24
ikenna1 5:bb6edc5b5be3 25 void RosenEngine::read_input(Gamepad &pad)
ikenna1 4:740e14ebbc97 26 {
ikenna1 4:740e14ebbc97 27 Vector2D mapped_coord = pad.get_coord();
ikenna1 8:87a845b8575e 28 _xjoystick = mapped_coord.x;
ikenna1 8:87a845b8575e 29 _yjoystick = mapped_coord.y;
ikenna1 9:241a1a7d8527 30 _d = pad.get_direction();
ikenna1 9:241a1a7d8527 31 // printf("_xjoystick ,_yjoystick = %f , %f\n",_xjoystick, _yjoystick);
ikenna1 4:740e14ebbc97 32 }
ikenna1 4:740e14ebbc97 33
ikenna1 7:ed5870cfb3e0 34 void RosenEngine::draw(N5110 &lcd)
ikenna1 7:ed5870cfb3e0 35 {
ikenna1 8:87a845b8575e 36 _ship.draw_ship(lcd);
ikenna1 9:241a1a7d8527 37 _weapons.draw(lcd);
ikenna1 7:ed5870cfb3e0 38 }
ikenna1 7:ed5870cfb3e0 39
ikenna1 7:ed5870cfb3e0 40 void RosenEngine::update(Gamepad &pad)
ikenna1 7:ed5870cfb3e0 41 {
ikenna1 8:87a845b8575e 42 _ship.update_ship(_xjoystick,_yjoystick);
ikenna1 9:241a1a7d8527 43 _weapons.update();
ikenna1 7:ed5870cfb3e0 44 }
ikenna1 9:241a1a7d8527 45 void RosenEngine::get_pos()
ikenna1 9:241a1a7d8527 46 {
ikenna1 9:241a1a7d8527 47
ikenna1 9:241a1a7d8527 48 Vector2D ship_pos = _ship.get_pos();
ikenna1 9:241a1a7d8527 49 ship_xpos = ship_pos.x;
ikenna1 9:241a1a7d8527 50 ship_ypos = ship_pos.y;
ikenna1 9:241a1a7d8527 51 ship_width = 9;
ikenna1 9:241a1a7d8527 52 _weapons.init(ship_xpos, ship_ypos, ship_width);
ikenna1 9:241a1a7d8527 53 }
ikenna1 9:241a1a7d8527 54 void RosenEngine::title(N5110 &lcd)
ikenna1 9:241a1a7d8527 55 {
ikenna1 9:241a1a7d8527 56 _menu.title(lcd,_d);
ikenna1 9:241a1a7d8527 57 }