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
Spikes/Spikes.cpp@13:cfdfe60a2327, 2020-05-18 (annotated)
- Committer:
- el18jgb
- Date:
- Mon May 18 15:46:04 2020 +0000
- Revision:
- 13:cfdfe60a2327
- Parent:
- Spikes.cpp@10:6c574b8524df
- Child:
- 17:18ae81180853
good bit of a clean up to create and test new functions withing classes with ease;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
el18jgb | 9:2836fc3d9ede | 1 | #include "Spikes.h" |
el18jgb | 9:2836fc3d9ede | 2 | |
el18jgb | 9:2836fc3d9ede | 3 | const int spike [5][5] = |
el18jgb | 9:2836fc3d9ede | 4 | { |
el18jgb | 9:2836fc3d9ede | 5 | {0,0,1,0,0}, |
el18jgb | 9:2836fc3d9ede | 6 | {0,0,1,0,0}, |
el18jgb | 9:2836fc3d9ede | 7 | {1,1,1,1,1}, |
el18jgb | 9:2836fc3d9ede | 8 | {0,1,1,1,0}, |
el18jgb | 9:2836fc3d9ede | 9 | {0,0,1,0,0}, |
el18jgb | 9:2836fc3d9ede | 10 | }; |
el18jgb | 9:2836fc3d9ede | 11 | |
el18jgb | 9:2836fc3d9ede | 12 | Spikes::Spikes() |
el18jgb | 9:2836fc3d9ede | 13 | { |
el18jgb | 9:2836fc3d9ede | 14 | |
el18jgb | 9:2836fc3d9ede | 15 | } |
el18jgb | 9:2836fc3d9ede | 16 | |
el18jgb | 9:2836fc3d9ede | 17 | Spikes::~Spikes() |
el18jgb | 9:2836fc3d9ede | 18 | { |
el18jgb | 9:2836fc3d9ede | 19 | |
el18jgb | 9:2836fc3d9ede | 20 | } |
el18jgb | 9:2836fc3d9ede | 21 | |
el18jgb | 9:2836fc3d9ede | 22 | void Spikes::init(){ |
el18jgb | 9:2836fc3d9ede | 23 | _x = 0; |
el18jgb | 9:2836fc3d9ede | 24 | _y = 0; |
el18jgb | 9:2836fc3d9ede | 25 | _height = 5; |
el18jgb | 9:2836fc3d9ede | 26 | _width = 5; |
el18jgb | 9:2836fc3d9ede | 27 | |
el18jgb | 9:2836fc3d9ede | 28 | _speed = 3; |
el18jgb | 9:2836fc3d9ede | 29 | } |
el18jgb | 9:2836fc3d9ede | 30 | |
el18jgb | 9:2836fc3d9ede | 31 | |
el18jgb | 9:2836fc3d9ede | 32 | void Spikes::draw(N5110 &lcd) |
el18jgb | 9:2836fc3d9ede | 33 | { |
el18jgb | 9:2836fc3d9ede | 34 | // draw spike |
el18jgb | 9:2836fc3d9ede | 35 | lcd.drawSprite(_x,_y,5,5,(int*)spike); |
el18jgb | 9:2836fc3d9ede | 36 | |
el18jgb | 9:2836fc3d9ede | 37 | } |
el18jgb | 9:2836fc3d9ede | 38 | |
el18jgb | 9:2836fc3d9ede | 39 | void Spikes::position(int x) |
el18jgb | 9:2836fc3d9ede | 40 | { |
el18jgb | 9:2836fc3d9ede | 41 | if (x == 1){ |
el18jgb | 9:2836fc3d9ede | 42 | _x = rand() % 37 + 1; |
el18jgb | 9:2836fc3d9ede | 43 | _y = 1; |
el18jgb | 9:2836fc3d9ede | 44 | } |
el18jgb | 9:2836fc3d9ede | 45 | if (x == 2){ |
el18jgb | 10:6c574b8524df | 46 | _x = rand() % 37 + 42; |
el18jgb | 9:2836fc3d9ede | 47 | _y = 1; |
el18jgb | 9:2836fc3d9ede | 48 | } |
el18jgb | 9:2836fc3d9ede | 49 | } |
el18jgb | 9:2836fc3d9ede | 50 | |
el18jgb | 9:2836fc3d9ede | 51 | void Spikes::update() |
el18jgb | 9:2836fc3d9ede | 52 | { |
el18jgb | 9:2836fc3d9ede | 53 | _y = _y + 3; |
el18jgb | 9:2836fc3d9ede | 54 | } |
el18jgb | 9:2836fc3d9ede | 55 | |
el18jgb | 9:2836fc3d9ede | 56 | Vector2D Spikes::get_pos() { |
el18jgb | 9:2836fc3d9ede | 57 | Vector2D p = {_x,_y}; |
el18jgb | 9:2836fc3d9ede | 58 | return p; |
el18jgb | 10:6c574b8524df | 59 | } |
el18jgb | 10:6c574b8524df | 60 | |
el18jgb | 10:6c574b8524df | 61 | void Spikes::hit(Gamepad &pad) |
el18jgb | 10:6c574b8524df | 62 | { |
el18jgb | 10:6c574b8524df | 63 | pad.led(1,1); |
el18jgb | 10:6c574b8524df | 64 | pad.led(4,1); |
el18jgb | 10:6c574b8524df | 65 | } |
el18jgb | 10:6c574b8524df | 66 | |
el18jgb | 10:6c574b8524df | 67 |