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@5:b230e79d36d6, 2018-04-19 (annotated)
- Committer:
- RehamFaqehi
- Date:
- Thu Apr 19 17:46:28 2018 +0000
- Revision:
- 5:b230e79d36d6
- Parent:
- 4:8c6723798227
- Child:
- 6:7b733b2a6cf6
The asteroid is moving now
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 | 4:8c6723798227 | 18 | srand(time(NULL)); |
| RehamFaqehi | 4:8c6723798227 | 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 | 4:8c6723798227 | 27 | int sprite[7][10] = { |
| RehamFaqehi | 4:8c6723798227 | 28 | |
| RehamFaqehi | 4:8c6723798227 | 29 | { 0,0,0,0,0,0,0,0,0,0, }, |
| RehamFaqehi | 4:8c6723798227 | 30 | { 0,0,0,0,1,1,0,1,0,0, }, |
| RehamFaqehi | 4:8c6723798227 | 31 | { 0,0,1,1,0,0,1,0,0,0, }, |
| RehamFaqehi | 4:8c6723798227 | 32 | { 0,1,1,1,1,0,1,1,1,0, }, |
| RehamFaqehi | 4:8c6723798227 | 33 | { 0,1,1,1,1,0,1,1,1,1, }, |
| RehamFaqehi | 4:8c6723798227 | 34 | { 0,0,1,1,0,0,1,0,0,0, }, |
| RehamFaqehi | 4:8c6723798227 | 35 | { 0,0,0,0,1,1,0,1,0,0, }, |
| RehamFaqehi | 4:8c6723798227 | 36 | |
| RehamFaqehi | 4:8c6723798227 | 37 | }; |
| RehamFaqehi | 4:8c6723798227 | 38 | lcd.drawSprite(_x,_y1,7,10,(int *)sprite); |
| RehamFaqehi | 5:b230e79d36d6 | 39 | } |
| RehamFaqehi | 5:b230e79d36d6 | 40 | |
| RehamFaqehi | 5:b230e79d36d6 | 41 | void Asteroid::update() |
| RehamFaqehi | 5:b230e79d36d6 | 42 | { |
| RehamFaqehi | 5:b230e79d36d6 | 43 | if(_x>0) { |
| RehamFaqehi | 5:b230e79d36d6 | 44 | _x -= _velocity.x; |
| RehamFaqehi | 5:b230e79d36d6 | 45 | } else { |
| RehamFaqehi | 5:b230e79d36d6 | 46 | _x = WIDTH - _size; //start from the begining again |
| RehamFaqehi | 5:b230e79d36d6 | 47 | _y1= rand()%(HEIGHT); |
| RehamFaqehi | 5:b230e79d36d6 | 48 | } |
| RehamFaqehi | 4:8c6723798227 | 49 | } |