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 Gamepad N5110 mbed-rtos
EnemyBeam/EnemyBeam2.cpp@0:99fa5a619081, 2019-04-13 (annotated)
- Committer:
 - RexRoshan
 - Date:
 - Sat Apr 13 01:13:53 2019 +0000
 - Revision:
 - 0:99fa5a619081
 - Child:
 - 4:4d673fb2d9dc
 
Mission 1 & 2 works perfectly
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| RexRoshan | 0:99fa5a619081 | 1 | #include "EnemyBeam2.h" | 
| RexRoshan | 0:99fa5a619081 | 2 | |
| RexRoshan | 0:99fa5a619081 | 3 | EnemyBeam2::EnemyBeam2() | 
| RexRoshan | 0:99fa5a619081 | 4 | { | 
| RexRoshan | 0:99fa5a619081 | 5 | |
| RexRoshan | 0:99fa5a619081 | 6 | } | 
| RexRoshan | 0:99fa5a619081 | 7 | |
| RexRoshan | 0:99fa5a619081 | 8 | EnemyBeam2::~EnemyBeam2() | 
| RexRoshan | 0:99fa5a619081 | 9 | { | 
| RexRoshan | 0:99fa5a619081 | 10 | |
| RexRoshan | 0:99fa5a619081 | 11 | } | 
| RexRoshan | 0:99fa5a619081 | 12 | |
| RexRoshan | 0:99fa5a619081 | 13 | void EnemyBeam2::init(int size,int a, int b ,int c, int d) | 
| RexRoshan | 0:99fa5a619081 | 14 | { | 
| RexRoshan | 0:99fa5a619081 | 15 | _size = size; | 
| RexRoshan | 0:99fa5a619081 | 16 | _x = _size; | 
| RexRoshan | 0:99fa5a619081 | 17 | _y = _size; | 
| RexRoshan | 0:99fa5a619081 | 18 | _a = a; | 
| RexRoshan | 0:99fa5a619081 | 19 | _b = b + 5; | 
| RexRoshan | 0:99fa5a619081 | 20 | _c = c; | 
| RexRoshan | 0:99fa5a619081 | 21 | _d = d; | 
| RexRoshan | 0:99fa5a619081 | 22 | } | 
| RexRoshan | 0:99fa5a619081 | 23 | |
| RexRoshan | 0:99fa5a619081 | 24 | void EnemyBeam2::draw(N5110 &lcd) | 
| RexRoshan | 0:99fa5a619081 | 25 | { | 
| RexRoshan | 0:99fa5a619081 | 26 | lcd.drawRect(_a,_b,_x,_y,FILL_BLACK); | 
| RexRoshan | 0:99fa5a619081 | 27 | lcd.drawRect(_c,_d,_x,_y,FILL_BLACK); | 
| RexRoshan | 0:99fa5a619081 | 28 | } | 
| RexRoshan | 0:99fa5a619081 | 29 | |
| RexRoshan | 0:99fa5a619081 | 30 | void EnemyBeam2::update() | 
| RexRoshan | 0:99fa5a619081 | 31 | { | 
| RexRoshan | 0:99fa5a619081 | 32 | _speed = 5.0; // scale is arbitrary, could be changed in future | 
| RexRoshan | 0:99fa5a619081 | 33 | |
| RexRoshan | 0:99fa5a619081 | 34 | // update y value depending on direction of movement | 
| RexRoshan | 0:99fa5a619081 | 35 | // North is decrement as origin is at the top-left so decreasing moves up | 
| RexRoshan | 0:99fa5a619081 | 36 | _a-=_speed; | 
| RexRoshan | 0:99fa5a619081 | 37 | _c-=_speed; | 
| RexRoshan | 0:99fa5a619081 | 38 | |
| RexRoshan | 0:99fa5a619081 | 39 | } | 
| RexRoshan | 0:99fa5a619081 | 40 | |
| RexRoshan | 0:99fa5a619081 | 41 | Vector2D EnemyBeam2::get_pos_21() | 
| RexRoshan | 0:99fa5a619081 | 42 | { | 
| RexRoshan | 0:99fa5a619081 | 43 | Vector2D b = {_a,_b}; | 
| RexRoshan | 0:99fa5a619081 | 44 | return b; | 
| RexRoshan | 0:99fa5a619081 | 45 | } | 
| RexRoshan | 0:99fa5a619081 | 46 | |
| RexRoshan | 0:99fa5a619081 | 47 | Vector2D EnemyBeam2::get_pos_22() | 
| RexRoshan | 0:99fa5a619081 | 48 | { | 
| RexRoshan | 0:99fa5a619081 | 49 | Vector2D c = {_c,_d}; | 
| RexRoshan | 0:99fa5a619081 | 50 | return c; | 
| RexRoshan | 0:99fa5a619081 | 51 | } | 
| RexRoshan | 0:99fa5a619081 | 52 | |
| RexRoshan | 0:99fa5a619081 | 53 | void EnemyBeam2::set_pos_21(Vector2D p) | 
| RexRoshan | 0:99fa5a619081 | 54 | { | 
| RexRoshan | 0:99fa5a619081 | 55 | _a = p.x ; | 
| RexRoshan | 0:99fa5a619081 | 56 | _b = p.y ; | 
| RexRoshan | 0:99fa5a619081 | 57 | } | 
| RexRoshan | 0:99fa5a619081 | 58 | |
| RexRoshan | 0:99fa5a619081 | 59 | void EnemyBeam2::set_pos_22(Vector2D p) | 
| RexRoshan | 0:99fa5a619081 | 60 | { | 
| RexRoshan | 0:99fa5a619081 | 61 | _c = p.x ; | 
| RexRoshan | 0:99fa5a619081 | 62 | _d = p.y ; | 
| RexRoshan | 0:99fa5a619081 | 63 | } |