Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Asteroids/Asteroid.cpp@6:7b733b2a6cf6, 2018-04-20 (annotated)
- Committer:
- RehamFaqehi
- Date:
- Fri Apr 20 21:03:05 2018 +0000
- Revision:
- 6:7b733b2a6cf6
- Parent:
- 5:b230e79d36d6
- Child:
- 8:13cef7cb872e
get positions of the asteroid and the rocket added with comparing function to get the number of hits
Who changed what in which revision?
| User | Revision | Line number | New 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 | 4:8c6723798227 | 13 | void Asteroid::init(int 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 | 6:7b733b2a6cf6 | 19 | _y1 = 22; //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 | 6:7b733b2a6cf6 | 46 | _y1= 22; //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 | } |