Nemesis game, fourth enemy
Enemy4.cpp@3:c94be48251b5, 2017-05-03 (annotated)
- Committer:
- musallambseiso
- Date:
- Wed May 03 20:04:16 2017 +0000
- Revision:
- 3:c94be48251b5
- Parent:
- 2:1f2d27210997
Removed redundant code, perfected Doxygen, added inline comments.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
musallambseiso | 2:1f2d27210997 | 1 | #include "Enemy4.h" |
musallambseiso | 2:1f2d27210997 | 2 | |
musallambseiso | 2:1f2d27210997 | 3 | Enemy4::Enemy4() |
musallambseiso | 2:1f2d27210997 | 4 | { |
musallambseiso | 2:1f2d27210997 | 5 | } |
musallambseiso | 2:1f2d27210997 | 6 | |
musallambseiso | 2:1f2d27210997 | 7 | Enemy4::~Enemy4() |
musallambseiso | 2:1f2d27210997 | 8 | { |
musallambseiso | 3:c94be48251b5 | 9 | } |
musallambseiso | 2:1f2d27210997 | 10 | |
musallambseiso | 3:c94be48251b5 | 11 | |
musallambseiso | 3:c94be48251b5 | 12 | // Initializion method: |
musallambseiso | 2:1f2d27210997 | 13 | |
musallambseiso | 2:1f2d27210997 | 14 | void Enemy4::init(int speed) |
musallambseiso | 2:1f2d27210997 | 15 | { |
musallambseiso | 3:c94be48251b5 | 16 | _x = rand() % 63 + 84; // Starting x position is randomized off screen. Creates a random ship generation. |
musallambseiso | 3:c94be48251b5 | 17 | _y = 21; // Starting y position (fixed, fourth lane) |
musallambseiso | 2:1f2d27210997 | 18 | |
musallambseiso | 3:c94be48251b5 | 19 | _velocity.x = -speed; // Velocity is based on the speed, which is input when method is used. |
musallambseiso | 2:1f2d27210997 | 20 | _velocity.y = 0; |
musallambseiso | 2:1f2d27210997 | 21 | } |
musallambseiso | 2:1f2d27210997 | 22 | |
musallambseiso | 3:c94be48251b5 | 23 | |
musallambseiso | 3:c94be48251b5 | 24 | // Draws fourth enemy ship onto LCD: |
musallambseiso | 3:c94be48251b5 | 25 | |
musallambseiso | 2:1f2d27210997 | 26 | void Enemy4::draw(N5110 &lcd) |
musallambseiso | 2:1f2d27210997 | 27 | { |
musallambseiso | 2:1f2d27210997 | 28 | lcd.drawLine(_x,_y,_x,_y+5,1); |
musallambseiso | 2:1f2d27210997 | 29 | lcd.drawLine(_x-1,_y,_x-1,_y+5,1); |
musallambseiso | 2:1f2d27210997 | 30 | lcd.drawLine(_x-2,_y+1,_x-2,_y+4,1); |
musallambseiso | 2:1f2d27210997 | 31 | lcd.drawLine(_x-3,_y+1,_x-3,_y+4,1); |
musallambseiso | 2:1f2d27210997 | 32 | lcd.drawLine(_x-4,_y+2,_x-4,_y+3,1); |
musallambseiso | 2:1f2d27210997 | 33 | } |
musallambseiso | 2:1f2d27210997 | 34 | |
musallambseiso | 3:c94be48251b5 | 35 | |
musallambseiso | 3:c94be48251b5 | 36 | // Updates fourth enemy ship's position: |
musallambseiso | 3:c94be48251b5 | 37 | |
musallambseiso | 2:1f2d27210997 | 38 | void Enemy4::update() |
musallambseiso | 2:1f2d27210997 | 39 | { |
musallambseiso | 3:c94be48251b5 | 40 | // X and y positions depend on velocity: |
musallambseiso | 2:1f2d27210997 | 41 | _x += _velocity.x; |
musallambseiso | 2:1f2d27210997 | 42 | _y += _velocity.y; |
musallambseiso | 2:1f2d27210997 | 43 | } |
musallambseiso | 2:1f2d27210997 | 44 | |
musallambseiso | 3:c94be48251b5 | 45 | |
musallambseiso | 3:c94be48251b5 | 46 | // Obtains fourth enemy ship's current position: |
musallambseiso | 3:c94be48251b5 | 47 | |
musallambseiso | 2:1f2d27210997 | 48 | Vector2D Enemy4::get_pos() |
musallambseiso | 2:1f2d27210997 | 49 | { |
musallambseiso | 2:1f2d27210997 | 50 | Vector2D p = {_x,_y}; |
musallambseiso | 2:1f2d27210997 | 51 | return p; |
musallambseiso | 2:1f2d27210997 | 52 | } |