ELEC2645 (2018/19) / Mbed 2 deprecated el17m2h_public

Dependencies:   mbed

Committer:
el17m2h
Date:
Sun Apr 21 16:10:19 2019 +0000
Revision:
14:529f798adae4
Parent:
13:10851784af9a
Child:
15:4efa04a6a376
Changed the doodler's update function so that it only affects the position of the doodler and the init function so that it also changes the velocity of the doodler. I also included the init function in the check wall collisions.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el17m2h 4:8ec314f806ae 1 #ifndef DOODLER_H
el17m2h 4:8ec314f806ae 2 #define DOODLER_H
el17m2h 4:8ec314f806ae 3
el17m2h 4:8ec314f806ae 4 #include "mbed.h"
el17m2h 4:8ec314f806ae 5 #include "N5110.h"
el17m2h 4:8ec314f806ae 6 #include "Gamepad.h"
el17m2h 4:8ec314f806ae 7 #include "Floors.h"
el17m2h 5:8814d6de77d0 8
el17m2h 4:8ec314f806ae 9 class Doodler{
el17m2h 4:8ec314f806ae 10 public:
el17m2h 4:8ec314f806ae 11 Doodler();
el17m2h 4:8ec314f806ae 12 ~Doodler();
el17m2h 14:529f798adae4 13 void init(int radius, float position_x, float position_y, double velocity_y);
el17m2h 8:90e789413e0b 14 void draw(N5110 &lcd);
el17m2h 14:529f798adae4 15 void update(Direction d, float mag, double velocity_y);
el17m2h 10:e1d2289705ef 16 float get_velocity_x();
el17m2h 10:e1d2289705ef 17 double get_velocity_y();
el17m2h 10:e1d2289705ef 18 float get_position_x();
el17m2h 10:e1d2289705ef 19 float get_position_y();
el17m2h 14:529f798adae4 20 void set_velocity(float vel_x, double vel_y);
el17m2h 14:529f798adae4 21 void set_position(float pos_x, float pos_y);
el17m2h 7:0d9cee90ab0d 22
el17m2h 4:8ec314f806ae 23
el17m2h 4:8ec314f806ae 24 private:
el17m2h 4:8ec314f806ae 25 int _radius;
el17m2h 10:e1d2289705ef 26 // since the velocity will be added, it will not be an integer so it cannot be a vector
el17m2h 14:529f798adae4 27 float _position_x;
el17m2h 14:529f798adae4 28 float _position_y;
el17m2h 10:e1d2289705ef 29 // velocity needs to be float in order to decelerate
el17m2h 10:e1d2289705ef 30 float _velocity_x;
el17m2h 10:e1d2289705ef 31 double _velocity_y;
el17m2h 10:e1d2289705ef 32 double _gravity;
el17m2h 10:e1d2289705ef 33 double _up;
el17m2h 4:8ec314f806ae 34 };
el17m2h 4:8ec314f806ae 35 #endif