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
SpaceInvaderEngine/SpaceInvaderEngine.cpp@11:c174d84e4866, 2020-04-01 (annotated)
- Committer:
- josh_ohara
- Date:
- Wed Apr 01 11:23:25 2020 +0000
- Revision:
- 11:c174d84e4866
- Parent:
- 10:9189419fda68
- Child:
- 12:be491ab6e742
Bullet vector completed
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
josh_ohara | 7:06a2558155f0 | 1 | |
josh_ohara | 7:06a2558155f0 | 2 | #include "SpaceInvaderEngine.h" |
josh_ohara | 7:06a2558155f0 | 3 | |
josh_ohara | 8:86cb9a9f8a73 | 4 | // N5110 lcd1; |
josh_ohara | 8:86cb9a9f8a73 | 5 | |
josh_ohara | 7:06a2558155f0 | 6 | SpaceInvaderEngine::SpaceInvaderEngine() |
josh_ohara | 7:06a2558155f0 | 7 | { |
josh_ohara | 7:06a2558155f0 | 8 | |
josh_ohara | 7:06a2558155f0 | 9 | } |
josh_ohara | 7:06a2558155f0 | 10 | |
josh_ohara | 8:86cb9a9f8a73 | 11 | SpaceInvaderEngine::~SpaceInvaderEngine() |
josh_ohara | 8:86cb9a9f8a73 | 12 | { |
josh_ohara | 8:86cb9a9f8a73 | 13 | |
josh_ohara | 8:86cb9a9f8a73 | 14 | } |
josh_ohara | 8:86cb9a9f8a73 | 15 | |
josh_ohara | 9:8e695df3cc36 | 16 | void SpaceInvaderEngine::init(int ship_height, int ship_width, int alien_size) { |
josh_ohara | 7:06a2558155f0 | 17 | |
josh_ohara | 7:06a2558155f0 | 18 | S1_height = ship_height; |
josh_ohara | 7:06a2558155f0 | 19 | S1_width = ship_width; |
josh_ohara | 9:8e695df3cc36 | 20 | A1_size = alien_size; |
josh_ohara | 8:86cb9a9f8a73 | 21 | |
josh_ohara | 9:8e695df3cc36 | 22 | A1y = BORDER + 5; |
josh_ohara | 11:c174d84e4866 | 23 | |
josh_ohara | 11:c174d84e4866 | 24 | Vector2D ship_pos = S1.get_position(); |
josh_ohara | 11:c174d84e4866 | 25 | BS1x = ship_pos.x; |
josh_ohara | 11:c174d84e4866 | 26 | BS1y = ship_pos.y; |
josh_ohara | 7:06a2558155f0 | 27 | |
josh_ohara | 9:8e695df3cc36 | 28 | A1.init(A1y,A1_size); |
josh_ohara | 7:06a2558155f0 | 29 | S1.init(S1_height,S1_width); |
josh_ohara | 11:c174d84e4866 | 30 | BS1.init(); |
josh_ohara | 8:86cb9a9f8a73 | 31 | |
josh_ohara | 7:06a2558155f0 | 32 | } |
josh_ohara | 7:06a2558155f0 | 33 | |
josh_ohara | 7:06a2558155f0 | 34 | void SpaceInvaderEngine::read_input(Gamepad &pad) |
josh_ohara | 7:06a2558155f0 | 35 | { |
josh_ohara | 7:06a2558155f0 | 36 | D = pad.get_direction(); |
josh_ohara | 7:06a2558155f0 | 37 | Mag = pad.get_mag(); |
josh_ohara | 7:06a2558155f0 | 38 | } |
josh_ohara | 8:86cb9a9f8a73 | 39 | |
josh_ohara | 8:86cb9a9f8a73 | 40 | void SpaceInvaderEngine::render(N5110 &lcd) |
josh_ohara | 8:86cb9a9f8a73 | 41 | { |
josh_ohara | 8:86cb9a9f8a73 | 42 | S1.render(lcd); |
josh_ohara | 9:8e695df3cc36 | 43 | A1.render(lcd); |
josh_ohara | 11:c174d84e4866 | 44 | BS1.render(lcd); |
josh_ohara | 8:86cb9a9f8a73 | 45 | } |
josh_ohara | 8:86cb9a9f8a73 | 46 | |
josh_ohara | 10:9189419fda68 | 47 | void SpaceInvaderEngine::update(Gamepad &pad, N5110 &lcd) |
josh_ohara | 8:86cb9a9f8a73 | 48 | { |
josh_ohara | 8:86cb9a9f8a73 | 49 | S1.update(D,Mag); |
josh_ohara | 10:9189419fda68 | 50 | A1.update(lcd); |
josh_ohara | 11:c174d84e4866 | 51 | get_ship_pos(); |
josh_ohara | 11:c174d84e4866 | 52 | BS1.update(pad, BS1x, BS1y); |
josh_ohara | 8:86cb9a9f8a73 | 53 | } |
josh_ohara | 8:86cb9a9f8a73 | 54 | |
josh_ohara | 11:c174d84e4866 | 55 | void SpaceInvaderEngine::get_ship_pos() |
josh_ohara | 11:c174d84e4866 | 56 | { |
josh_ohara | 11:c174d84e4866 | 57 | Vector2D ship_pos = S1.get_position(); |
josh_ohara | 11:c174d84e4866 | 58 | BS1x = ship_pos.x + 4; |
josh_ohara | 11:c174d84e4866 | 59 | BS1y = ship_pos.y; |
josh_ohara | 11:c174d84e4866 | 60 | } |
josh_ohara | 11:c174d84e4866 | 61 | |
josh_ohara | 11:c174d84e4866 | 62 | |
josh_ohara | 11:c174d84e4866 | 63 |