ELEC2645 (2017/18) / Mbed 2 deprecated fy15raf

Dependencies:   mbed

Committer:
RehamFaqehi
Date:
Tue Apr 24 11:17:43 2018 +0000
Revision:
8:13cef7cb872e
Parent:
6:7b733b2a6cf6
Child:
11:cb48d596aa3e
Two more asteroids added

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RehamFaqehi 4:8c6723798227 1 #include "Asteroid.h"
RehamFaqehi 4:8c6723798227 2
RehamFaqehi 4:8c6723798227 3 Asteroid::Asteroid()
RehamFaqehi 4:8c6723798227 4 {
RehamFaqehi 4:8c6723798227 5
RehamFaqehi 4:8c6723798227 6 }
RehamFaqehi 4:8c6723798227 7
RehamFaqehi 4:8c6723798227 8 Asteroid::~Asteroid()
RehamFaqehi 4:8c6723798227 9 {
RehamFaqehi 4:8c6723798227 10
RehamFaqehi 4:8c6723798227 11 }
RehamFaqehi 4:8c6723798227 12
RehamFaqehi 8:13cef7cb872e 13 void Asteroid::init(float speed)
RehamFaqehi 4:8c6723798227 14 {
RehamFaqehi 4:8c6723798227 15 _size = 5;
RehamFaqehi 4:8c6723798227 16 _x = WIDTH - _size;
RehamFaqehi 4:8c6723798227 17
RehamFaqehi 6:7b733b2a6cf6 18 // srand(time(NULL));
RehamFaqehi 8:13cef7cb872e 19 _y1 = rand()%(HEIGHT); // random initial position on y-axis.
RehamFaqehi 4:8c6723798227 20
RehamFaqehi 4:8c6723798227 21 _velocity.x = speed;
RehamFaqehi 4:8c6723798227 22 }
RehamFaqehi 4:8c6723798227 23
RehamFaqehi 4:8c6723798227 24 void Asteroid::draw(N5110 &lcd)
RehamFaqehi 4:8c6723798227 25 {
RehamFaqehi 4:8c6723798227 26
RehamFaqehi 6:7b733b2a6cf6 27 int sprite[6][10] = {
RehamFaqehi 4:8c6723798227 28
RehamFaqehi 4:8c6723798227 29 { 0,0,0,0,1,1,0,1,0,0, },
RehamFaqehi 4:8c6723798227 30 { 0,0,1,1,0,0,1,0,0,0, },
RehamFaqehi 4:8c6723798227 31 { 0,1,1,1,1,0,1,1,1,0, },
RehamFaqehi 4:8c6723798227 32 { 0,1,1,1,1,0,1,1,1,1, },
RehamFaqehi 4:8c6723798227 33 { 0,0,1,1,0,0,1,0,0,0, },
RehamFaqehi 4:8c6723798227 34 { 0,0,0,0,1,1,0,1,0,0, },
RehamFaqehi 4:8c6723798227 35
RehamFaqehi 4:8c6723798227 36 };
RehamFaqehi 6:7b733b2a6cf6 37 lcd.drawSprite(_x,_y1,6,10,(int *)sprite);
RehamFaqehi 5:b230e79d36d6 38 }
RehamFaqehi 5:b230e79d36d6 39
RehamFaqehi 5:b230e79d36d6 40 void Asteroid::update()
RehamFaqehi 5:b230e79d36d6 41 {
RehamFaqehi 5:b230e79d36d6 42 if(_x>0) {
RehamFaqehi 5:b230e79d36d6 43 _x -= _velocity.x;
RehamFaqehi 5:b230e79d36d6 44 } else {
RehamFaqehi 5:b230e79d36d6 45 _x = WIDTH - _size; //start from the begining again
RehamFaqehi 8:13cef7cb872e 46 _y1= rand()%(HEIGHT);
RehamFaqehi 5:b230e79d36d6 47 }
RehamFaqehi 6:7b733b2a6cf6 48 }
RehamFaqehi 6:7b733b2a6cf6 49
RehamFaqehi 6:7b733b2a6cf6 50 Vector2D Asteroid::get_pos()
RehamFaqehi 6:7b733b2a6cf6 51 {
RehamFaqehi 6:7b733b2a6cf6 52 Vector2D p = {_x,_y1};
RehamFaqehi 6:7b733b2a6cf6 53 return p;
RehamFaqehi 4:8c6723798227 54 }